-
Notifications
You must be signed in to change notification settings - Fork 5.5k
pkg/compose: build with bake: drop support for buildx v0.16 and lower #13280
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
[buildx v0.17][1] was released a Year ago, so any version this conditional code was accounting for would be versions before that; the latest of which being [buildx v0.16.2][2] (July 2024). Given that those versions are long EOL and no longer supported, we can probably remove the conditional code. [1]: https://github.com/docker/buildx/releases/tag/v0.17.0 [2]: https://github.com/docker/buildx/releases/tag/v0.16.2 Signed-off-by: Sebastiaan van Stijn <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, I let @ndeloof check also
|
LGTM, but I wonder we could check version number and warn user running an obsolete release of buildx |
|
That's always gonna be tricky; that applies to all binaries (cli, compose itself, buildx, ... ); we can somewhat fix it in packaging and set a minimum version, https://github.com/docker/packaging/blob/66807ae5e8fbbed4dd498bfe2891c504b78cf38b/pkg/docker-cli/deb/control#L19 |
|
I had in mind Mac/Windows installation with some users relying on homebrew or manual installation, or maybe an older version was selected. We could just check by |
|
Yeah, it's a tricky one; it's good to shell out to I wonder if we should consider moving the options-struct-to-command-line-flags conversion to a utility package in buildx; that way changes made in the buildx command-line will stay in lock-step with the code to set those flags (e.g. if a flag is added / removed / renamed / changed, the buildx maintainers can make sure the code that compose uses to call Perhaps it would even be an idea to have a (hidden) flag that acccepts a JSON-struct with all the options - that would have a more structured way to pass options to buildx when invoked; i.e., something like docker buildx bake --___bake_options='{"version":"v0.29.1", "progress": "rawjson", "provenance": true .....}'
@crazy-max any thoughts? Would something like that make sense to do? (i.e. a flag or subcommand to execute buildx programmatically?) |
This MR contains the following updates: | Package | Update | Change | |---|---|---| | [docker/compose](https://github.com/docker/compose) | patch | `v2.40.0` -> `v2.40.1` | MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot). **Proposed changes to behavior should be submitted there as MRs.** --- ### Release Notes <details> <summary>docker/compose (docker/compose)</summary> ### [`v2.40.1`](https://github.com/docker/compose/releases/tag/v2.40.1) [Compare Source](docker/compose@v2.40.0...v2.40.1) #### What's Changed ##### ✨ Improvements ##### 🐛 Fixes - Write error to watcher error channel if Start() fails by [@​Trolldemorted](https://github.com/Trolldemorted) in [#​13263](docker/compose#13263) - Fix: set PWD only if not set by [@​kianelbo](https://github.com/kianelbo) in [#​13268](docker/compose#13268) - bake only interpolates ${\*} by [@​ndeloof](https://github.com/ndeloof) in [#​13270](docker/compose#13270) - Fix: make "publish" push all compose files addressed in "extends" statements when using "profiles". by [@​ogoulpeau-ledger](https://github.com/ogoulpeau-ledger) in [#​13277](docker/compose#13277) - Support Ctrl+Z to run compose in background by [@​ndeloof](https://github.com/ndeloof) in [#​13289](docker/compose#13289) - Fix race-condition bug in publish command by [@​paul-kinexon](https://github.com/paul-kinexon) in [#​13291](docker/compose#13291) - Set secret/config uid:gid to match container's USER by [@​ndeloof](https://github.com/ndeloof) in [#​13288](docker/compose#13288) - Fix failure to delegate build with bake by [@​ndeloof](https://github.com/ndeloof) in [#​13275](docker/compose#13275) - Make CTRL+Z a no-op operation on Windows by [@​glours](https://github.com/glours) in [#​13293](docker/compose#13293) ##### 🔧 Internal - pkg/compose: align classic builder implementation with docker/cli by [@​thaJeztah](https://github.com/thaJeztah) in [#​13278](docker/compose#13278) - pkg/compose: build with bake: drop support for buildx v0.16 and lower by [@​thaJeztah](https://github.com/thaJeztah) in [#​13280](docker/compose#13280) - Use fixed version of compose bridge transformer images by [@​glours](https://github.com/glours) in [#​13284](docker/compose#13284) ##### ⚙️ Dependencies - Build(deps): bump github.com/docker/docker from 28.5.0+incompatible to 28.5.1+incompatible by [@​dependabot](https://github.com/dependabot)\[bot] in [#​13274](docker/compose#13274) - Build(deps): bump github.com/docker/cli from 28.5.0+incompatible to 28.5.1+incompatible by [@​dependabot](https://github.com/dependabot)\[bot] in [#​13273](docker/compose#13273) - Build(deps): bump golang.org/x/sys from 0.36.0 to 0.37.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​13272](docker/compose#13272) - Build(deps): bump docker/buildx v0.29.1, moby/buildkit v0.25.1 by [@​thaJeztah](https://github.com/thaJeztah) in [#​13279](docker/compose#13279) - Bump golang to version 1.24.9 by [@​glours](https://github.com/glours) in [#​13285](docker/compose#13285) #### New Contributors - [@​Trolldemorted](https://github.com/Trolldemorted) made their first contribution in [#​13263](docker/compose#13263) - [@​ogoulpeau-ledger](https://github.com/ogoulpeau-ledger) made their first contribution in [#​13277](docker/compose#13277) - [@​paul-kinexon](https://github.com/paul-kinexon) made their first contribution in [#​13291](docker/compose#13291) **Full Changelog**: <docker/compose@v2.40.0...v2.40.1> </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever MR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this MR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box --- This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTEuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE1MS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiXX0=-->
buildx v0.17 was released a Year ago, so any version this conditional code was accounting for would be versions before that; the latest of which being buildx v0.16.2 (July 2024).
Given that those versions are long EOL and no longer supported, we can probably remove the conditional code.
What I did
Related issue
(not mandatory) A picture of a cute animal, if possible in relation to what you did