From f37f29ab60edaa2bcf638473bc267f0cd1e0261c Mon Sep 17 00:00:00 2001 From: Malte Poll Date: Wed, 14 Jun 2023 12:00:13 +0200 Subject: [PATCH] wip --- bazel/container/Containerfile | 26 ++++++++++++++++++-------- bazel/container/Makefile | 7 ++----- bazel/container/container.sh | 3 ++- bazel/toolchains/ci_deps.bzl | 2 +- 4 files changed, 23 insertions(+), 15 deletions(-) diff --git a/bazel/container/Containerfile b/bazel/container/Containerfile index 33f6150a3..5f8581b21 100644 --- a/bazel/container/Containerfile +++ b/bazel/container/Containerfile @@ -1,16 +1,26 @@ # syntax=docker/dockerfile:1.5-labs -FROM fedora:37 +FROM fedora:38 as base ARG TARGETOS ARG TARGETARCH -ARG BAZEL_VERSION=6.1.2 -ARG BAZELISK_VERSION=v1.16.0 -ARG BAZELISK_SHA256=168851e70cf5f95c0e215e7f3aaca5132ffc3c8dd8f585a4157b0be2b53cfe32 +ARG BAZEL_VERSION=6.2.1 +ARG BAZELISK_VERSION=v1.17.0 +ARG BAZELISK_SHA256_LINUX_AMD64=61699e22abb2a26304edfa1376f65ad24191f94a4ffed68a58d42b6fee01e124 +ARG BAZELISK_SHA256_LINUX_ARM64=a836972b8a7c34970fb9ecc44768ece172f184c5f7e2972c80033fcdcf8c1870 +ARG BAZELISK_URL=https://github.com/bazelbuild/bazelisk/releases/download/${BAZELISK_VERSION}/bazelisk-${TARGETOS}-${TARGETARCH} -ADD --checksum=sha256:${BAZELISK_SHA256} \ - https://github.com/bazelbuild/bazelisk/releases/download/${BAZELISK_VERSION}/bazelisk-${TARGETOS}-${TARGETARCH} \ - /usr/local/bin/bazelisk +FROM base AS base-amd64 +ADD --checksum=sha256:${BAZELISK_SHA256_LINUX_AMD64} \ + ${BAZELISK_URL} \ + /usr/local/bin/bazelisk +FROM base AS base-arm64 +ADD --checksum=sha256:${BAZELISK_SHA256_LINUX_ARM64} \ + ${BAZELISK_URL} \ + /usr/local/bin/bazelisk + + +FROM base-${TARGETARCH} as bazel RUN chmod +x /usr/local/bin/bazelisk && \ ln -s /usr/local/bin/bazelisk /usr/local/bin/bazel && \ dnf install -y \ @@ -31,6 +41,6 @@ USER builder WORKDIR /workspace RUN git config --global --add safe.directory /workspace && \ - USE_BAZEL_VERSION=${BAZEL_VERSION} bazel version + USE_BAZEL_VERSION=${BAZEL_VERSION} bazel version ENTRYPOINT [ "/usr/local/bin/bazel" ] diff --git a/bazel/container/Makefile b/bazel/container/Makefile index 5c5b1f4ef..0396622b8 100644 --- a/bazel/container/Makefile +++ b/bazel/container/Makefile @@ -1,12 +1,9 @@ export DOCKER_BUILDKIT=1 CONTAINER_NAME := ghcr.io/edgelesssys/bazel-container -CONTAINER_VERSION := v6.1.2-0 +CONTAINER_VERSION := v6.2.1-0 .PHONY: container container-push container: - docker build -f Containerfile -t "$(CONTAINER_NAME):$(CONTAINER_VERSION)" . - -container-push: - docker push "$(CONTAINER_NAME):$(CONTAINER_VERSION)" + docker buildx build --platform=linux/amd64,linux/arm64 . -f Containerfile -t "$(CONTAINER_NAME):$(CONTAINER_VERSION)" --push diff --git a/bazel/container/container.sh b/bazel/container/container.sh index f2e8da5a9..269f9ad64 100644 --- a/bazel/container/container.sh +++ b/bazel/container/container.sh @@ -8,7 +8,7 @@ function setup { } function startBazelServer { - local containerImage="ghcr.io/edgelesssys/bazel-container:v6.1.2-0" + local containerImage="ghcr.io/edgelesssys/bazel-container:v6.2.1-0" local containerName="bazeld" setup @@ -32,6 +32,7 @@ function startBazelServer { -v "${HOME}/.cache/bazel":"/home/builder/.cache/bazel" \ -v "${HOME}/.cache/shared_bazel_repository_cache":"/home/builder/.cache/shared_bazel_repository_cache" \ -v "${HOME}/.cache/shared_bazel_action_cache":"/home/builder/.cache/shared_bazel_action_cache" \ + --platform linux/arm64 \ --entrypoint=/bin/sleep \ "${containerImage}" \ infinity || return $? diff --git a/bazel/toolchains/ci_deps.bzl b/bazel/toolchains/ci_deps.bzl index 81237f57e..52314ecd2 100644 --- a/bazel/toolchains/ci_deps.bzl +++ b/bazel/toolchains/ci_deps.bzl @@ -28,7 +28,7 @@ def _shellcheck_deps(): type = "tar.xz", ) http_archive( - name = "com_github_koalaman_shellcheck_linux_aamd64", + name = "com_github_koalaman_shellcheck_linux_arm64", urls = [ "https://cdn.confidential.cloud/constellation/cas/sha256/179c579ef3481317d130adebede74a34dbbc2df961a70916dd4039ebf0735fae", "https://github.com/koalaman/shellcheck/releases/download/v0.9.0/shellcheck-v0.9.0.linux.aarch64.tar.xz",