coreos / butane

Butane translates human-readable Butane Configs into machine-readable Ignition Configs.
https://coreos.github.io/butane/
Apache License 2.0
255 stars 70 forks source link

Make experimental spec stabilization smoother #451

Closed jlebon closed 1 year ago

jlebon commented 1 year ago

In the latest 1.5.0 stabilization, there were a lot of churn across multiple repos (at least this one, https://github.com/coreos/coreos-assembler, https://github.com/coreos/fedora-coreos-config, and https://github.com/openshift/os) and branches within these repos that required tweaking because we had tests that used the 1.5.0-experimental spec.

What are some ways we could make stabilization smoother in the future?

jlebon commented 1 year ago

One crude idea is to have some kind of hidden BUTANE_UNSUPPORTED_ALLOW_EXPERIMENTAL env var knob where 1.5.0-experimental could be parsed as if it were 1.5.0 temporarily to increase the window of time available for transition.

bgilbert commented 1 year ago

The main issue is the Ignition/Butane ratchet, which was unusually protracted this time, and the inability to revendor Ignition into cosa without also updating Butane. https://github.com/coreos/coreos-assembler/pull/3422 should remove the cosa codebase from the critical part of that ratchet, so that the process will just require updating tests in fedora-coreos-config and openshift/os.

AIUI there was another issue this cycle, where some RHCOS 4.13 CI was running on cosa main and some was running on rhcos-4.13. The cosa PR should prevent that from causing an issue, though of course we should also try not to do it.

bgilbert commented 1 year ago

Checklist update in https://github.com/coreos/ignition/pull/1607.