microsoft / go

The Microsoft build of the Go toolset
BSD 3-Clause "New" or "Revised" License
255 stars 20 forks source link

Release automation should support building a subset of microsoft/go-images #609

Open dagood opened 2 years ago

dagood commented 2 years ago

The release-go-images pipeline only supports building the full set of images. It could instead have some way to only build/release a certain set of Dockerfiles. (The infra has a pattern-matching system to use when queueing the go-images internal build directly, but we would need to modify our release automation pipelines to pass along this value.)

This would likely only be used when we identify an issue in one of our patch files and need to e.g. ship a 1.18.3-2 revision update but leave 1.17.x alone. This situation is expected to be rare.

A way that a dev could work around this now is to reject the release-go-images pipeline rather than approving it, and run the Go build manually. For now, this doesn't seem like a particularly burdensome workaround.

dagood commented 2 years ago

Pre-1.19, this would also be useful for the separate Boring/FIPS branch. Upstream maintains it less predictably, so we sometimes might have to wait to release our FIPS build, and sometimes might not have to wait. For now, we have to use the cancellation workaround mentioned in the description if we decide not to wait.

(1.19 is coming out soon. After that, we can expect 1.18 to be supported for about a year. That's about how long this feature would be useful for the FIPS branch scenario.)