Remove rules_docker, make multiarch images canonical#13324
Remove rules_docker, make multiarch images canonical#13324prestonvanloon merged 2 commits intodevelopfrom
Conversation
404255b to
8025600
Compare
|
Some CI changes are required to support this PR. I'll leave it as a draft until the CI changes have been made. |
8025600 to
0f545c7
Compare
0f545c7 to
63afd47
Compare
| name = "io_bazel_rules_docker", | ||
| sha256 = "b1e80761a8a8243d03ebca8845e9cc1ba6c82ce7c5179ce2b295cd36f7e394bf", | ||
| urls = ["https://github.com/bazelbuild/rules_docker/releases/download/v0.25.0/rules_docker-v0.25.0.tar.gz"], | ||
| name = "rules_distroless", |
There was a problem hiding this comment.
how does https://github.com/GoogleContainerTools/rules_distroless act as an alternative?
There was a problem hiding this comment.
rules_docker is deprecated and is no longer supported.
rules_distroless offers some of the functionality that rules_docker supported. Specifically, it replaced the passwd.tar generation in tools/BUILD.bazel
| platforms = [ | ||
| "linux/amd64", | ||
| "linux/arm64", | ||
| "linux/arm64/v8", |
There was a problem hiding this comment.
what does the v8 here do?
There was a problem hiding this comment.
I think that it's just the long version of arm64. For whatever reason, this image was no longer publishing "linux/arm64" so I had to explicitly set the variant.
| binary = ":beacon-chain", | ||
| entrypoint = ["/beacon-chain"], | ||
| repository = "gcr.io/prylabs-dev/prysm/beacon-chain", | ||
| repository = "gcr.io/prysmaticlabs/prysm/beacon-chain", |
There was a problem hiding this comment.
this isn't related right? this just fixes the namespace?
There was a problem hiding this comment.
This part is the "make multiarch images canonical" half of the PR.
| prysm_image_upload( | ||
| name = "push_images", | ||
| binary = ":bootnode", | ||
| entrypoint = ["/bootnode"], |
There was a problem hiding this comment.
does this thing still need visibility? visibility = ["//visibility:private"],
There was a problem hiding this comment.
No, that isn't necessary for this macro
## What ❔ The canonical images after OffchainLabs/prysm#13324 now multiarch, that is including Apple Silicon builds. ## Why ❔ ## Checklist <!-- Check your PR fulfills the following items. --> <!-- For draft PRs check the boxes as you complete them. --> - [ ] PR title corresponds to the body of PR (we generate changelog entries from PRs). - [ ] Tests for the changes have been added / updated. - [ ] Documentation comments have been added / updated. - [ ] Code has been formatted via `zk fmt` and `zk lint`. - [ ] Spellcheck has been run via `cargo spellcheck --cfg=./spellcheck/era.cfg --code 1`.
What type of PR is this?
Feature
What does this PR do? Why is it needed?
The rules_docker repo is no longer maintained. It has been abandoned and functionality has been
fragmented to multiple repos. As of bazel 7.0.0 (#13321), rules_docker will no longer function
without patches. This PR removes rules_docker from the repository and relies on OCI images.
Which issues(s) does this PR fix?
Related issues: #13241, #4900
Other notes for review