-
Notifications
You must be signed in to change notification settings - Fork 18
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
feature(releaser): better goreleaser with arm support and optimized AMD64 #428
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.
Can you please add brief list of what has been changed and why, to the PR description.
.goreleaser.yml
Outdated
@@ -2,34 +2,84 @@ version: 2 | |||
|
|||
env: | |||
- GO111MODULE=on | |||
- GOARM64=v8.0,lse,crypto |
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.
Can you please add a comment why exactly lse, crypto
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.
LSE is not needed, but crypto is, as gemini is using crypto random generator, and if we have that ext on arm, we can use hardware acceleration
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.
Great, please add a comment
@@ -25,6 +25,9 @@ jobs: | |||
with: | |||
go-version: '1.23' | |||
|
|||
- name: Set up QEMU |
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.
Why do you need qemu?
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.
We are building cross platform for docker, we need QEMU
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.
Can you please add a comment
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
But it's not really that urgent for us to have arm images.
No one is gonna use them anytime soon.
ca0f5fe
to
6af49e6
Compare
6af49e6
to
121e766
Compare
…MD64 Signed-off-by: Dusan Malusev <[email protected]>
121e766
to
9b11be2
Compare
Arm images are mostly side-effects in this pull request, there are some issues in goreleaser (mainly deprications) that are fixed, and optimized builds for AMD64 (since gemini is running on AWS, we can allow go to use more specialized instructions (SIMD), as AWS instances have modern CPUs |
again, optimization which is nice to have but we our focus with gemini for now, should be on it's functional behavior. |
docker manifest
to generate multi-platform docker images (combine arm and x86_64 images)