[libcxx] Enable installing new runner binary on existing container
This patch does some refactoring to enable installing a new GHA runner binary into an existing libcxx image. We achieve this by pushing the base image to the registry and enabling control over the base image used for building the actions image. This will always build and push both images even if an existing image is being used for the actions image, but this should not impact anything as the SHAs are pinned everywhere and space/build time is not a large concern. Reviewers: ldionne, EricWF, #reviewers-libcxx Reviewed By: ldionne Pull Request: https://github.com/llvm/llvm-project/pull/148073
This commit is contained in:
parent
6107e3aa22
commit
b33f9f64c7
@ -34,7 +34,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 }}
|
||||
|
||||
@ -55,6 +57,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 }}
|
||||
|
||||
@ -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.
|
||||
@ -309,7 +310,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
|
||||
|
||||
|
||||
@ -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
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user