@artsy/gudetama

Make your CI scripts as lazy as possible

Usage no npm install needed!

<script type="module">
  import artsyGudetama from 'https://cdn.skypack.dev/@artsy/gudetama';
</script>

README

gudetama

gudetama

Next-level CI optimization for lazy (fast) builds

what

gudetama lets you avoid re-running steps in your CI pipeline when there's no need to run them again.

but how

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.

project status

Extremely WIP

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

about artsy

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!