Next-level CI optimization for lazy (fast) builds
gudetama lets you avoid re-running steps in your CI pipeline when there's no need to run them again.
First you declare all the things that can affect the outcome of a particular CI step. They can be files, env vars, tool versions, or anything you can write to
stdout. Then before running that particular CI step,
gudetama compares the current values of those things against their values on a previous successful build. If any of them changed it lists the differences, and re-runs the step. If none of them changed
gudetama skips the step. If any files were supposed to be generated and passed to later steps,
gudetama will restore them from a cache of the previous build.
installing on CI
Add this to the start of your CI script
curl -s -L https://github.com/artsy/gudetama/releases/download/v1.0.0-25/install.sh | source /dev/stdin
This project is the work of engineers at Artsy, the world's leading and largest online art marketplace and platform for discovering art. One of our core Engineering Principles is being Open Source by Default which means we strive to share as many details of our work as possible.
You can learn more about this work from our blog and by following @ArtsyOpenSource or explore our public data by checking out our API. If you're interested in a career at Artsy, read through our job postings!