-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Unify docker builds #10251
Comments
Bumping the priority because Gnosis (Philippe Schommers) said that we should pay more attention to our releases on Docker because it is fundamental to the Gnosis ecosystem. |
For homebrew there is also: https://github.com/Homebrew/homebrew-core/blob/master/Formula/e/erigon.rb, https://formulae.brew.sh/formula/erigon Which isn't in use now, probably. But used to be pretty good when I was on macOS back in the day |
Assigning to you @lystopad |
…release images. (#11766) It is a work on #10251 . Main changes: - goreleaser reconfigured (more binaries added, most of the build flags passed to goreleaser) - released erigon binary now has "Build info" dynamic values such as a branch, tag, commit id. - amd64 binaries will be build using GOAMD64=v2 support for better support of modern CPUs. - as agreed -- now it will generate release without prefix "v", i.e. "2.60.7", but not "v2.60.7". - docker image will have following binaries: erigon, integration, diag, sentry, txpool, downloader and rpcdaemon. (Exactly the same binaries as published in artifacts in the release notes). - multi-platform docker tag created with support of two OS/Arch -- linux/amd64/v2 and linux/arm64 which should cover almost all use cases when docker container used. - docker images will have labels which refer to full commit id and short commit id, build timestamp, and others. It may help to identify which commit is a part of the image. - this workflow could be executed in a "dry_run" mode, i.e. to build artifacts and keep it for a 1d in a workflow artifact store (in this case we can download artifacts and test before actual release). Windows artifacts will be not released for now (require fix).
I implemented multi-platform docker builds for releases as well as docker image releases for new commits in main branch. |
For instance, v2.60.0-rc1 is available in 3 flavours:
thorax/erigon:2.60.0-rc1-arm64
,thorax/erigon:2.60.0-rc1-amd64
,thorax/erigon:v2.60.0-rc1
. Those can probably be combined into one. Side note: the arm64/amd64 flavours are significantly smaller (30 MB vs 487MB).Alex Sharov:
"
hub.docker.com
now building for:docker_{\1}
branches, and all tags, andmain
branch aslatest
tag. And probably it doesn't produce multi-arch images - maybe it already can - i don't knowour
.release.yml
triggered from.github/workflow/release.yml
and it does cross-compilation (while hub.docker.com doesn't).Some people did try add more binaries and more archs https://github.com/ledgerwatch/erigon/pull/7912/files#diff-42e26dc67aed8aa3edb2472b4403288c1699fb6dc47419b9a475f0f224fe4689L68 - but i don't know how to review this change 🙂 and don't want support so many archs (how will download from github all this binaries).
goreleaser has many features - like publish in homebrew or apt. also alway was lazy to add it."
See also Issues #7893 & #10023 and PR #7912.
The text was updated successfully, but these errors were encountered: