-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Makefile: use buildx when GOOS/GOARCH are specified #12081
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
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
e6d7d0b
to
a52baef
Compare
Signed-off-by: Max Englander <max@planetscale.com>
a52baef
to
5117023
Compare
Review ChecklistHello reviewers! 👋 Please follow this checklist when reviewing this Pull Request. General
If a new flag is being introduced:
If a workflow is added or modified:
Bug fixes
Non-trivial changes
New/Existing features
Backward compatibility
|
deepthi
approved these changes
Feb 14, 2023
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, nice little fix.
dbussink
approved these changes
Feb 21, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Component: Build/CI
Type: CI/Build
Type: Enhancement
Logical improvement (somewhere between a bug and feature)
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Addresses #12108
Right now it's not very easy to build Docker images on Mac M1, unless I'm missing something obvious.
If I try to build
lite
images for example, it will kick off adocker build
, which will try to build arm64/aarch64 Docker images. This usually fails when the Docker build tries to download dependencies for that architecture, and the providers of those dependencies don't support it.Trying figure out how to resolve arm64 dependencies is probably a good idea for the future, but this PR just provides a work-around by making it easier to create amd64 Docker images from Mac M1.
buildx
is kind of slow, but it's better than nothing. And I'm able to run amd64 images on Mac M1 thanks to rosetta.This PR changes the
make docker_*
target so that it usesdocker buildx
to create cross-platform builds when eitherGOOS
orGOARCH
are different from, respectively,GOHOSTOS
orGOHOSTARCH
.So for example, on my M1 Mac, I can build images for linux/amd64 like this: