fail build if minimal required version of buildx isn't installed by ndeloof · Pull Request #13295 · docker/compose

@ndeloof

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>

@ndeloof ndeloof deleted the buildx_minimal_version branch

October 22, 2025 07:49

tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request

Oct 23, 2025

@rfay rfay mentioned this pull request

Feb 16, 2026

4 tasks

rfay added a commit to rfay/ddev that referenced this pull request

Feb 16, 2026
- Fixes ddev#8117

Docker Compose now requires the buildx plugin (>= 0.17.0) per
docker/compose#13295. DDEV depends on docker-compose and buildx but
previously only checked for buildx in the diagnostic
`ddev utility dockercheck` command via shell exec, with no version
enforcement.

- Uses the `docker/cli/cli-plugins/manager` Go package (already a
  dependency via docker/cli) to discover CLI plugins and their versions
  via `manager.ListPlugins()`, replacing shell-based detection.
- Adds `BuildxVersionConstraint` (">= 0.17.0") to `DockerVersionMatrix`.
- Adds `GetBuildxVersion()` and `CheckDockerBuildx()` in requirements.go,
  following the same pattern as `CheckDockerCompose()`.
- Checks buildx at `ddev start`/`ddev restart` time in root.go
  `PersistentPreRun`.
- Shows `docker-buildx` version in `ddev version` output.
- Updates `ddev utility dockercheck` to use the new Go-based detection.

1. `ddev version` — should show a `docker-buildx` row with the version
2. `ddev utility dockercheck` — should show buildx version and check result
3. `ddev start` on any project — should pass buildx check silently

Added `TestGetCLIPlugins`, `TestGetBuildxVersion`, and `TestCheckBuildx`
tests in `pkg/dockerutil/requirements_test.go`.

Users without the buildx plugin installed (or with versions < 0.17.0)
will see a failure at `ddev start`/`ddev restart` time with install
instructions.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

@rfay rfay mentioned this pull request

Feb 16, 2026

rfay added a commit to rfay/ddev that referenced this pull request

Feb 16, 2026
…skip buildkite]

- Fixes ddev#8117

Docker Compose now requires the buildx plugin (>= 0.17.0) per
docker/compose#13295. DDEV depends on docker-compose and buildx but
previously only checked for buildx in the diagnostic
`ddev utility dockercheck` command via shell exec, with no version
enforcement.

- Uses the `docker/cli/cli-plugins/manager` Go package (already a
  dependency via docker/cli) to discover CLI plugins and their versions
  via `manager.ListPlugins()`, replacing shell-based detection.
- Adds `BuildxVersionConstraint` (">= 0.17.0") to `DockerVersionMatrix`.
- Adds `GetBuildxVersion()` and `CheckDockerBuildx()` in requirements.go,
  following the same pattern as `CheckDockerCompose()`.
- Checks buildx at `ddev start`/`ddev restart` time in root.go
  `PersistentPreRun`.
- Shows `docker-buildx` version in `ddev version` output.
- Updates `ddev utility dockercheck` to use the new Go-based detection.

1. `ddev version` — should show a `docker-buildx` row with the version
2. `ddev utility dockercheck` — should show buildx version and check result
3. `ddev start` on any project — should pass buildx check silently

Added `TestGetCLIPlugins`, `TestGetBuildxVersion`, and `TestCheckBuildx`
tests in `pkg/dockerutil/requirements_test.go`.

Users without the buildx plugin installed (or with versions < 0.17.0)
will see a failure at `ddev start`/`ddev restart` time with install
instructions.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

rfay added a commit to rfay/ddev that referenced this pull request

Feb 17, 2026
…skip buildkite]

- Fixes ddev#8117

Docker Compose now requires the buildx plugin (>= 0.17.0) per
docker/compose#13295. DDEV depends on docker-compose and buildx but
previously only checked for buildx in the diagnostic
`ddev utility dockercheck` command via shell exec, with no version
enforcement.

- Uses the `docker/cli/cli-plugins/manager` Go package (already a
  dependency via docker/cli) to discover CLI plugins and their versions
  via `manager.ListPlugins()`, replacing shell-based detection.
- Adds `BuildxVersionConstraint` (">= 0.17.0") to `DockerVersionMatrix`.
- Adds `GetBuildxVersion()` and `CheckDockerBuildx()` in requirements.go,
  following the same pattern as `CheckDockerCompose()`.
- Checks buildx at `ddev start`/`ddev restart` time in root.go
  `PersistentPreRun`.
- Shows `docker-buildx` version in `ddev version` output.
- Updates `ddev utility dockercheck` to use the new Go-based detection.

1. `ddev version` — should show a `docker-buildx` row with the version
2. `ddev utility dockercheck` — should show buildx version and check result
3. `ddev start` on any project — should pass buildx check silently

Added `TestGetCLIPlugins`, `TestGetBuildxVersion`, and `TestCheckBuildx`
tests in `pkg/dockerutil/requirements_test.go`.

Users without the buildx plugin installed (or with versions < 0.17.0)
will see a failure at `ddev start`/`ddev restart` time with install
instructions.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>