-
Notifications
You must be signed in to change notification settings - Fork 345
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
Speed up buildx process #1267
Speed up buildx process #1267
Conversation
Codecov Report
@@ Coverage Diff @@
## master #1267 +/- ##
=======================================
Coverage 87.38% 87.38%
=======================================
Files 90 90
Lines 4913 4913
=======================================
Hits 4293 4293
Misses 457 457
Partials 163 163 Continue to review full report at Codecov.
|
Makefile
Outdated
@@ -77,6 +78,10 @@ gobuild: | |||
docker: | |||
@[ ! -z "$(PIPELINE)" ] || docker build --build-arg=GOPROXY=${GOPROXY} --file build/Dockerfile -t "$(BUILD_IMAGE)" . | |||
|
|||
.PHONY: dockerx | |||
dockerx: | |||
@[ ! -z "$(PIPELINE)" ] || docker buildx build --progress=plain --build-arg=GOPROXY=${GOPROXY} --platform=linux/arm64,linux/amd64 --file build/Dockerfile -t "$(BUILD_IMAGE)" . |
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.
Shouldn't ./.ci/publish-images.sh
be changed to use this new target?
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.
Not for this PR, but how hard would it be to add s390? Is it just a matter of adding a new platform, or would it typically imply other changes as well?
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.
golang support s390x.
so just added platform linux/s390x.
without this pr
old way will build in qemu, which will be very slow. this pr is for fixing this
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.
it should, i missing the changes, update it later
Signed-off-by: Morlay <morlay.null@gmail.com>
@jgehrcke i change a little for |
previous way means We build both current changes means. We build all on
|
@@ -75,7 +78,11 @@ gobuild: | |||
|
|||
.PHONY: docker | |||
docker: | |||
@[ ! -z "$(PIPELINE)" ] || docker build --build-arg=GOPROXY=${GOPROXY} --file build/Dockerfile -t "$(BUILD_IMAGE)" . | |||
@[ ! -z "$(PIPELINE)" ] || docker build --build-arg=GOPROXY=${GOPROXY} --build-arg=TARGETARCH=$(GOARCH) --file build/Dockerfile -t "$(BUILD_IMAGE)" . |
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.
Is there anything still using this target? Should they still be using this target? If all users should move to dockerx
, then we can just replace this target with the new one (ie, the contents of dockerx
goes into this).
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.
e2e testing still use this,the Dockerfile could be built by docker directly.
moving to dockerx
could be next stage.
for testing, --push
need to be --load
@rubenvp8510 if your upgrade e2e test gets merged after this one, you might want to align the building of the container with the changes from this PR. |
Looks like this has caused the https://github.com/jaegertracing/jaeger-operator/runs/1285761358 |
@jpkrohling could you check the username & password for push to |
The credentials in the env vars were fine in the previous commit: https://github.com/jaegertracing/jaeger-operator/runs/1281540702 |
could you re run this https://github.com/jaegertracing/jaeger-operator/runs/1285761358? |
The message is quite clear:
But I'll trigger it again. |
quay.io robot account need to set permissions for repo. it that changed? I create a quay.io account, got now pushed https://quay.io/repository/morlay/jaeger-operator?tag=latest&tab=tags |
It hasn't changed since the last successful commit. |
Could you check the setting on or re run the last success workflow https://github.com/jaegertracing/jaeger-operator/runs/1281540702. this pr doesn't change the pushing flow. |
here is a additional tag |
avoid to run
gobuild
withqemu
to speed up multi arch build.added
make dockerx
for local run.