diff --git a/.github/workflows/libcxx-build-containers.yml b/.github/workflows/libcxx-build-containers.yml index 564a79341edb1..32777c217950b 100644 --- a/.github/workflows/libcxx-build-containers.yml +++ b/.github/workflows/libcxx-build-containers.yml @@ -36,7 +36,9 @@ jobs: - name: Build the Linux builder image working-directory: libcxx/utils/ci - run: docker compose build actions-builder + run: | + docker compose build builder-base + docker compose build actions-builder env: TAG: ${{ github.sha }} @@ -57,6 +59,7 @@ jobs: if: github.event_name == 'push' working-directory: libcxx/utils/ci run: | + docker compose push builder-base docker compose push actions-builder env: TAG: ${{ github.sha }} diff --git a/libcxx/utils/ci/Dockerfile b/libcxx/utils/ci/Dockerfile index 316e9c7490991..24062d4cac2c2 100644 --- a/libcxx/utils/ci/Dockerfile +++ b/libcxx/utils/ci/Dockerfile @@ -38,6 +38,7 @@ # If you're only looking to run the Docker image locally for debugging a # build bot, see the `run-buildbot-container` script located in this directory. +ARG ACTIONS_BASE_IMAGE # HACK: We set the base image in the docker-compose file depending on the final target (buildkite vs github actions). # This means we have a much slower container build, but we can use the same Dockerfile for both targets. @@ -310,7 +311,7 @@ CMD /opt/android/container-setup.sh && buildkite-agent start # # IMAGE: ghcr.io/libcxx/actions-builder. # -FROM builder-base AS actions-builder +FROM $ACTIONS_BASE_IMAGE AS actions-builder ARG GITHUB_RUNNER_VERSION diff --git a/libcxx/utils/ci/docker-compose.yml b/libcxx/utils/ci/docker-compose.yml index 20536bc32fa65..dec05a9742c27 100644 --- a/libcxx/utils/ci/docker-compose.yml +++ b/libcxx/utils/ci/docker-compose.yml @@ -3,6 +3,16 @@ x-versions: &compiler_versions LLVM_HEAD_VERSION: 21 services: + builder-base: + image: ghcr.io/llvm/libcxx-linux-builder-base:${TAG} + build: + context: . + dockerfile: Dockerfile + target: builder-base + args: + BASE_IMAGE: ubuntu:jammy + <<: *compiler_versions + actions-builder: image: ghcr.io/llvm/libcxx-linux-builder:${TAG} build: @@ -11,6 +21,7 @@ services: target: actions-builder args: BASE_IMAGE: ubuntu:jammy + ACTIONS_BASE_IMAGE: builder-base GITHUB_RUNNER_VERSION: "2.326.0" <<: *compiler_versions