-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Add arm64 support for binaries and docker images #2176
Conversation
Codecov Report
@@ Coverage Diff @@
## master #2176 +/- ##
==========================================
+ Coverage 96.11% 96.15% +0.03%
==========================================
Files 219 219
Lines 10658 10658
==========================================
+ Hits 10244 10248 +4
+ Misses 356 353 -3
+ Partials 58 57 -1
Continue to review full report at Codecov.
|
Resolved.
|
Hi @yurishkuro, this PR has been a while after my "workaround" of this binary naming issue. Anything new about the "renaming the binaries consistently" or we leave it as it is? Could you please review again? Thanks! |
I put it on the agenda for the next project meeting, but let me ping ppl directly to see if we can resolve faster: @pavolloffay @objectiser |
@yurishkuro I'm fine with the rename, to avoid duplication. |
@MrXinWang do you want to (a) rebase and (b) change Makefile to have a single name format for every binary? |
Hi @yurishkuro. All done :)) Please review again, thanks! |
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.
Could you explain a bit how you tested this? Unfortunately, not all deployment steps are running on PR CI.
Hi @yurishkuro ! I tested on both my x86_64 and arm64 machine with following methods:
git clone https://github.com/jaegertracing/jaeger.git && cd jaeger
git submodule update --init --recursive
make install-tools
make docker
|
Could you also try these steps?
Also, please add a change to the CHANGELOG describing the breaking changes to binary names in the tarball distributions. We probably also need to change some docs, e.g.
|
@yurishkuro Tested these two commands, both worked well. I have also added the related change to CHANGELOG.md |
minor suggestion: in the future, try to avoid force-pushing a single commit, it makes it impossible to see incremental changes, e.g. in the last one the whole Makefile is shown as changed again. We squash commits before merge anyway. |
Thanks for the suggestion, yes that makes sense. I did some rebase work and to make the commit tree clean (the CI magically failed if I commit in 2 commits, however if I squashed them it passes...), I used squash and force push again....sorry about that...I will try to avoid this from now on. |
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
@pavolloffay could you take another look in case I missed something?
CHANGELOG.md
Outdated
@@ -7,6 +7,7 @@ Changes by Version | |||
### Backend Changes | |||
|
|||
#### Breaking Changes | |||
* Add arm64 support for binaries and docker images. Rename the released binary name format to <Name>-<OS>-<ARCH>, tarball name format to jaeger-<Version>-<OS>-<ARCH> ([#2176](https://github.com/jaegertracing/jaeger/pull/2176), [@MrXinWang](https://github.com/MrXinWang)) |
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.
The released binary names or tarball names were not changed. Or am I missing something?
The build names via make build-
is an internal detail, hence we don't have to list this as a breaking change.
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.
Add arm64 support for binaries and make architecture configurable in docker images.
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.
The tarball names have not changed, but binary names inside them have changed to include arch.
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.
The binary names seem the same as before:
Packaging into jaeger-1.18.0-linux-amd64.tar.gz:
jaeger-1.18.0-linux-amd64/
jaeger-1.18.0-linux-amd64/jaeger-agent
jaeger-1.18.0-linux-amd64/jaeger-all-in-one
jaeger-1.18.0-linux-amd64/example-hotrod
jaeger-1.18.0-linux-amd64/jaeger-query
jaeger-1.18.0-linux-amd64/jaeger-ingester
jaeger-1.18.0-linux-amd64/jaeger-collector
Packaging into jaeger-1.18.0-darwin-amd64.tar.gz:
jaeger-1.18.0-darwin-amd64/
jaeger-1.18.0-darwin-amd64/jaeger-agent
jaeger-1.18.0-darwin-amd64/jaeger-all-in-one
jaeger-1.18.0-darwin-amd64/example-hotrod
jaeger-1.18.0-darwin-amd64/jaeger-query
jaeger-1.18.0-darwin-amd64/jaeger-ingester
jaeger-1.18.0-darwin-amd64/jaeger-collector
Packaging into jaeger-1.18.0-windows-amd64.tar.gz:
jaeger-1.18.0-windows-amd64/
jaeger-1.18.0-windows-amd64/jaeger-agent.exe
jaeger-1.18.0-windows-amd64/jaeger-ingester.exe
jaeger-1.18.0-windows-amd64/jaeger-all-in-one.exe
jaeger-1.18.0-windows-amd64/jaeger-query.exe
jaeger-1.18.0-windows-amd64/example-hotrod.exe
jaeger-1.18.0-windows-amd64/jaeger-collector.exe
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.
Hi @pavolloffay ! I think now the x86_64 binaries are added an amd64
after linux
, before they are just -linux. Arm64 and s390x ones are the same. This can be derived from the Makefile changes, for example: here.
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.
maybe we strip all suffixes before creating tarballs?
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.
@yurishkuro I checked the scripts/travis/package-deploy.sh
and it turns out that @pavolloffay is right, there is a staging step where we rename suffixes of all binaries (the make build outputs are indeed internal details)...So I think I can remove the breaking change in CHANGELOG.md and remove that part to minor changes.
@MrXinWang just a couple of nits. Overall it looks good. |
This commit adds building support for binaries and container images. This commit also changes binary name format in Makefile to make sure every binary has a single name format: <BinaryName>-<OS>-<ARCH> Signed-off-by: Henry Wang <[email protected]>
Signed-off-by: Henry Wang <[email protected]>
Thanks @pavolloffay. Rebased and added 90b5c3f to fix your request. Please take a look. |
thanks @MrXinWang |
Hi, can anyone direct me to the Arm based Agent Docker image? we would like to run on AWS Graviton. |
Which problem is this PR solving?
Resolves #1656
Short description of the changes
Signed-off-by: Henry Wang [email protected]