[libcxx] [llvm] [libc++][Android] Fix Dockerfile (PR #154856)
Ryan Prichard via llvm-commits
llvm-commits at lists.llvm.org
Mon Aug 25 15:51:24 PDT 2025
https://github.com/rprichard updated https://github.com/llvm/llvm-project/pull/154856
>From 3c4097afd691b07a85ceb3d87ae1e144ff34509f Mon Sep 17 00:00:00 2001
From: Ryan Prichard <rprichard at google.com>
Date: Thu, 21 Aug 2025 16:16:35 -0700
Subject: [PATCH 1/4] [libc++][Android] Fix Dockerfile
In docker-compose.yml, add *image_versions arguments for the
android-buildkite-builder service, so that ACTIONS_BASE_IMAGE is set
(to builder-base). This will also set the BASE_IMAGE, which we don't
really want, because this service uses ubuntu:noble instead of the
ubuntu:jammy default, but that's OK because the setting is successfully
overridden.
In vendor/android/run-buildbot-container, use the correct ghcr.io
Docker path (ghcr.io/llvm/libcxx-android-builder). (This Docker image
doesn't actually exist at ghcr.io (yet), but it is the name produced
by the Docker compose file.)
---
libcxx/utils/ci/docker-compose.yml | 2 +-
libcxx/utils/ci/vendor/android/run-buildbot-container | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/libcxx/utils/ci/docker-compose.yml b/libcxx/utils/ci/docker-compose.yml
index ccaee8c896ded..44f9e6354ff51 100644
--- a/libcxx/utils/ci/docker-compose.yml
+++ b/libcxx/utils/ci/docker-compose.yml
@@ -37,4 +37,4 @@ services:
ANDROID_CLANG_VERSION: r563880
ANDROID_CLANG_PREBUILTS_COMMIT: 6ae4184bb8706f9731569b9a0a82be3fcdcb951c
ANDROID_SYSROOT_COMMIT: f8b85cc5262c6e5cbc9a92c1bab2b18b32a4c63f
- <<: *compiler_versions
+ <<: [*image_versions, *compiler_versions]
diff --git a/libcxx/utils/ci/vendor/android/run-buildbot-container b/libcxx/utils/ci/vendor/android/run-buildbot-container
index 7b5d9a4cc3fe7..81c719b1f8b96 100755
--- a/libcxx/utils/ci/vendor/android/run-buildbot-container
+++ b/libcxx/utils/ci/vendor/android/run-buildbot-container
@@ -27,5 +27,5 @@ if [ -S /var/run/docker.sock ]; then
DOCKER_OPTIONS+=(--volume /var/run/docker.sock:/var/run/docker.sock)
fi
-docker run "${DOCKER_OPTIONS[@]}" ghcr.io/libcxx/android-buildkite-builder \
+docker run "${DOCKER_OPTIONS[@]}" ghcr.io/llvm/libcxx-android-builder \
bash -c 'git config --global --add safe.directory /llvm; (/opt/android/container-setup.sh && exec bash)'
>From 512c6a2986e9d18b0b53e1b41c9051da6ac86b3f Mon Sep 17 00:00:00 2001
From: Ryan Prichard <rprichard at google.com>
Date: Thu, 21 Aug 2025 16:29:31 -0700
Subject: [PATCH 2/4] Reenable Android Docker image build.
---
.github/workflows/libcxx-build-containers.yml | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/.github/workflows/libcxx-build-containers.yml b/.github/workflows/libcxx-build-containers.yml
index 43c446a2c02ce..45b625605e134 100644
--- a/.github/workflows/libcxx-build-containers.yml
+++ b/.github/workflows/libcxx-build-containers.yml
@@ -40,11 +40,11 @@ jobs:
env:
TAG: ${{ github.sha }}
- # - name: Build the Android builder image
- # working-directory: libcxx/utils/ci
- # run: docker compose build android-buildkite-builder
- # env:
- # TAG: ${{ github.sha }}
+ - name: Build the Android builder image
+ working-directory: libcxx/utils/ci
+ run: docker compose build android-buildkite-builder
+ env:
+ TAG: ${{ github.sha }}
- name: Log in to GitHub Container Registry
uses: docker/login-action at 9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0
>From 18a51af785da64751615ab2d1f8424537b6dc076 Mon Sep 17 00:00:00 2001
From: Ryan Prichard <rprichard at google.com>
Date: Mon, 25 Aug 2025 15:43:54 -0700
Subject: [PATCH 3/4] Reenable Android image push
---
.github/workflows/libcxx-build-containers.yml | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/.github/workflows/libcxx-build-containers.yml b/.github/workflows/libcxx-build-containers.yml
index 45b625605e134..9a5ca0fbed9e7 100644
--- a/.github/workflows/libcxx-build-containers.yml
+++ b/.github/workflows/libcxx-build-containers.yml
@@ -62,10 +62,10 @@ jobs:
env:
TAG: ${{ github.sha }}
- # - name: Push the Android builder image
- # if: github.event_name == 'push'
- # working-directory: libcxx/utils/ci
- # run: |
- # docker compose push android-buildkite-builder
- # env:
- # TAG: ${{ github.sha }}
+ - name: Push the Android builder image
+ if: github.event_name == 'push'
+ working-directory: libcxx/utils/ci
+ run: |
+ docker compose push android-buildkite-builder
+ env:
+ TAG: ${{ github.sha }}
>From 713ea46c23e2f2737907562635e9ed265b33e026 Mon Sep 17 00:00:00 2001
From: Ryan Prichard <rprichard at google.com>
Date: Mon, 25 Aug 2025 15:50:59 -0700
Subject: [PATCH 4/4] Try to change the default Docker location
https://evodify.com/change-docker-storage-location/
---
.github/workflows/libcxx-build-containers.yml | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/.github/workflows/libcxx-build-containers.yml b/.github/workflows/libcxx-build-containers.yml
index 9a5ca0fbed9e7..520ec04b6185b 100644
--- a/.github/workflows/libcxx-build-containers.yml
+++ b/.github/workflows/libcxx-build-containers.yml
@@ -32,6 +32,14 @@ jobs:
steps:
- uses: actions/checkout at 11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
+ # The default Docker storage location for GitHub Actions doesn't have
+ # enough disk space, so change it to /mnt, which has more disk space.
+ - name: Change Docker storage location
+ run: |
+ sudo mkdir /mnt/docker
+ echo '{ "data-root": "/mnt/docker" }' | sudo tee /etc/docker/daemon.json
+ sudo systemctl restart docker
+
- name: Build the Linux builder image
working-directory: libcxx/utils/ci
run: |
More information about the llvm-commits
mailing list