buildkite / feedback

Got feedback? Please let us know!
https://buildkite.com
25 stars 24 forks source link

Source control the whole pipeline definition, not just YAML step-definitions #369

Open petemounce opened 6 years ago

petemounce commented 6 years ago

We have a strong requirement to be able to reproduce very old builds. Our customers build games, those have multi-year cycles, and the cost/effort/risk involved for a games studio to upgrade a dependency (which we are) is very high - so, we need to retain the ability to support older versions for years.

This means we need to pin, to source control

In addition, we also have learned that not source controlling our CI configuration leads to a madness of manual GUI-driven unaudited stealth changes that, when breakages happen, we don't notice until much later.

So, it would be lovely to be able to keep the whole YAML pipeline definition inside source control, not just the step-definitions as currently.

We've seen we can use the REST API's Create/Update Pipeline endpoints - we'll definitely use those to achieve this, unless you get there first.

If we get there first, we'll create a CLI that does this - but it might be coloured by our own opinions. Anyone else want it? It strikes me that most build engineers that realise CI is built mostly with engineering tears might... ;)