-
Notifications
You must be signed in to change notification settings - Fork 3.4k
Makefile: Fix creating docker builders #39681
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
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.
looks good
Please rebase against the tip of |
not sure if it's related to this PR, but the image build failed 👀 https://github.com/cilium/cilium/actions/runs/15190884205/job/42723096009?pr=39681
edit: never mind joe beat me to it #39681 (comment) |
29de690
to
dc57e29
Compare
Hmm, no space left on device: https://github.com/cilium/cilium/actions/runs/15191119641/job/42723907246?pr=39681 |
I was hoping a rebase would fix that, but apparently not. I filed this issue to investigate: |
It seems that the output of `docker buildx ls` doesn't match the expectation of the command that we use: docker buildx ls | grep -E -e "[a-zA-Z0-9-]+ \*" | cut -d ' ' -f1 With the current versions of Docker (28.1.1) and buildx (0.23.0), the output of `docker buildx ls` looks like this: NAME/NODE DRIVER/ENDPOINT STATUS BUILDKIT PLATFORMS naughty_mayer* docker-container \_ naughty_mayer0 \_ unix:///var/run/docker.sock running v0.21.1 linux/amd64* (+4), linux/arm64*, linux/386 default docker \_ default \_ default running v0.21.0 linux/amd64 (+4), linux/386 ...and the above command's output is empty. Change the command to the following: docker buildx ls --format '{{ .Name }}' | head -n1 ...assuming that the idea is to get the name of the first builder, check if it's default (or default-linux), and if it is, create an actual one that would use the docker-container driver and be able to build multi-arch images. This fix resolves the following error message on machines that don't have a suitable builder in advance: ERROR: Multi-platform build is not supported for the docker driver. Switch to a different driver, or turn on the containerd image store, and try again. Learn more at https://docs.docker.com/go/build-multi-platform/ Signed-off-by: Maxim Mikityanskiy <maxim@isovalent.com>
dc57e29
to
ccff2d6
Compare
/test |
It seems that the output of
docker buildx ls
doesn't match the expectation of the command that we use:With the current versions of Docker (28.1.1) and buildx (0.23.0), the output of
docker buildx ls
looks like this:...and the above command's output is empty.
Change the command to the following:
...assuming that the idea is to get the name of the first builder, check if it's default (or default-linux), and if it is, create an actual one that would use the docker-container driver and be able to build multi-arch images.
This fix resolves the following error message on machines that don't have a suitable builder in advance: