Multiarch docker containers (#12428)

* Add bazel-zig-cc for a hermetic cc toolchain

* gazelle

* Remove llvm

* remove wl

* Add new URLs for renamed repo

* gazelle

* Update to v2.0.0-rc1

* bump to rc2

* Proof of concept multi-arch containers for beacon-chain

* TODO and gaz

* Refactor to starlark macro. Use a version of bash that actually works

* progress

* gaz

* multirun to use multiple repositories, but doesn't work with tag stamping

* Revert "multirun to use multiple repositories, but doesn't work with tag stamping"

This reverts commit 93afa76f65.

* Add targets for all supported docker images and temporarily set the repository to prysm-dev for testing

* use a temporary fix to see if it works on buildkite

* Revert "use a temporary fix to see if it works on buildkite"

This reverts commit ddc79283ca.

* testing a cURL fix

* try fix with my fix

* Revert "try fix with my fix"

This reverts commit bb7521bf47.

* Revert "testing a cURL fix"

This reverts commit 8a4782110f.

* try tip of main branch for rules_oci

* update to 1.2.0

* Update rules_oci to v1.3.0

* Update rule_oci to 1.3.4

* Disable experimental_remote_downloader

* Remove extra zig bazelrc

* Move image deps to its own file

* PR feedback

---------

Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
This commit is contained in:
Preston Van Loon
2023-09-28 10:24:16 -05:00
committed by GitHub
parent c20f188966
commit 02ee6897bb
10 changed files with 267 additions and 6 deletions

View File

@@ -40,6 +40,7 @@ pkg_tar(
mode = "0o644",
package_dir = "etc",
tags = ["manual"],
visibility = ["//visibility:public"],
)
CC_DEFAULT_BASE = select({
@@ -99,3 +100,28 @@ container_image(
user = "root",
visibility = ["//visibility:public"],
)
# Create a bash tar layer for docker images. This allows docker images to have access to the "bash"
# command and improves debugging abilities on the image.
genrule(
name = "bash_tar",
srcs = select({
"@platforms//cpu:x86_64": ["@bash_amd64//file"],
"@platforms//cpu:arm64": ["@bash_arm64//file"],
}),
outs = ["bash.tar"],
cmd = "ar x $< && xz -d data.tar.xz -c >> $@",
visibility = ["//visibility:public"],
)
# libtinfo6 is required for terminal activity and contains terminfo library.
genrule(
name = "libtinfo6_tar",
srcs = select({
"@platforms//cpu:x86_64": ["@libtinfo6_amd64//file"],
"@platforms//cpu:arm64": ["@libtinfo6_arm64//file"],
}),
outs = ["libtinfo6.tar"],
cmd = "ar x $< && xz -d data.tar.xz -c >> $@",
visibility = ["//visibility:public"],
)