Skip to content

Cherry pick #11743 for v3.31 branch#11747

Merged
nelljerram merged 3 commits into
projectcalico:release-v3.31from
nelljerram:buildx-pin-v3.31
Jan 30, 2026
Merged

Cherry pick #11743 for v3.31 branch#11747
nelljerram merged 3 commits into
projectcalico:release-v3.31from
nelljerram:buildx-pin-v3.31

Conversation

@nelljerram
Copy link
Copy Markdown
Member

@nelljerram nelljerram commented Jan 30, 2026

On the v3.31 branch, "UT/FV tests on new kernel" CI is failing and the artifacts show the same problem as in #11743, i.e.:

docker buildx build --load --platform=linux/amd64 --pull --build-arg UBI_IMAGE=registry.access.redhat.com/ubi9/ubi-minimal:latest --build-arg GIT_VERSION=v3.31.3-44-gd4da4610c064-dirty --build-arg CALICO_BASE=calico/base:ubi9-1764972441 --build-arg BPFTOOL_IMAGE=calico/bpftool:v7.5.0 -t typha:latest-amd64 -f docker-image/Dockerfile docker-image
ERROR: failed to build: Error response from daemon: client version 1.52 is too new. Maximum supported API version is 1.41: driver not connecting
make[2]: *** [Makefile:118: .calico_typha.created-amd64] Error 1
make[2]: Leaving directory '/home/ubuntu/calico/typha'
make[1]: *** [Makefile:302: build-typha] Error 2
make[1]: Leaving directory '/home/ubuntu/calico/felix'
make: Leaving directory '/home/ubuntu/calico/felix'
make: *** [Makefile:384: fv-bpf] Error 2

It's not identical to the master branch because v3.31 uses a separate copy of VM coding under felix/.semaphore.

On the v3.31 branch, "UT/FV tests on new kernel" CI is failing and the artifacts show the same
problem as in projectcalico#11743, i.e.:
```
docker buildx build --load --platform=linux/amd64 --pull --build-arg UBI_IMAGE=registry.access.redhat.com/ubi9/ubi-minimal:latest --build-arg GIT_VERSION=v3.31.3-44-gd4da4610c064-dirty --build-arg CALICO_BASE=calico/base:ubi9-1764972441 --build-arg BPFTOOL_IMAGE=calico/bpftool:v7.5.0 -t typha:latest-amd64 -f docker-image/Dockerfile docker-image
ERROR: failed to build: Error response from daemon: client version 1.52 is too new. Maximum supported API version is 1.41: driver not connecting
make[2]: *** [Makefile:118: .calico_typha.created-amd64] Error 1
make[2]: Leaving directory '/home/ubuntu/calico/typha'
make[1]: *** [Makefile:302: build-typha] Error 2
make[1]: Leaving directory '/home/ubuntu/calico/felix'
make: Leaving directory '/home/ubuntu/calico/felix'
make: *** [Makefile:384: fv-bpf] Error 2
```

It's not identical to the master branch because I think v3.31 is still using Focal, not Jammy.  But
trying the same fix, adapted for Focal.
Copilot AI review requested due to automatic review settings January 30, 2026 10:54
@nelljerram nelljerram requested a review from a team as a code owner January 30, 2026 10:54
@marvin-tigera marvin-tigera added this to the Calico v3.31.4 milestone Jan 30, 2026
@marvin-tigera marvin-tigera added release-note-required Change has user-facing impact (no matter how small) docs-pr-required Change is not yet documented labels Jan 30, 2026
@nelljerram nelljerram added docs-not-required Docs not required for this change release-note-not-required Change has no user-facing impact and removed release-note-required Change has user-facing impact (no matter how small) docs-pr-required Change is not yet documented labels Jan 30, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR cherry-picks the fix from PR #11743 to the v3.31 branch, addressing a Docker buildx API version incompatibility issue in CI tests. The problem occurs when the latest buildx version attempts to use API version 1.52, which exceeds the Docker daemon's maximum supported API version 1.41. This adaptation pins the docker-buildx-plugin package to version 0.29.0 for Ubuntu 20.04 Focal (used in v3.31), similar to how the original PR fixed it for Jammy (used in master).

Changes:

  • Pins docker-buildx-plugin to version 0.29.0 for Ubuntu Focal in the VM test setup script
  • Updates copyright year to include 2026

Copy link
Copy Markdown
Member

@fasaxc fasaxc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One query but looks like it should do the trick.

- export IMAGE=ubuntu-2404-noble-amd64-v20250502a
- export UBUNTU_VERSION=noble
- export DOCKER_VERSION=5:27.5.1-1~ubuntu.24.04~noble
- export BUILDX_VERSION=" "
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems odd to have a space in the quotes (rather than empty string)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We're not letting docker float here (see line above), should we pin buildx (but to something more recent)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I used a space because I misread/misunderstood

: ${BUILDX_VERSION="=0.29.0-0~ubuntu.22.04~jammy"}

in create-test-vm as

: ${BUILDX_VERSION:="=0.29.0-0~ubuntu.22.04~jammy"}

In fact, := defaults if the var is unset or empty, and = defaults only if the var is unset. So it would work to set BUILDX_VERSION to an empty string here. But IMO that's relying on some very fiddly behaviour.

Agree that we could also pin BUILDX_VERSION for 24.04. The version today is 0.31.1-1~ubuntu.24.04~noble, so I guess I'll put that? Then that also makes the previous point moot.

@nelljerram
Copy link
Copy Markdown
Member Author

Pretty sure the one FV failure is a flake.

@nelljerram nelljerram merged commit fbb8d9d into projectcalico:release-v3.31 Jan 30, 2026
2 of 3 checks passed
@nelljerram nelljerram deleted the buildx-pin-v3.31 branch January 30, 2026 17:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs-not-required Docs not required for this change release-note-not-required Change has no user-facing impact

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants