Thanks to visit codestin.com
Credit goes to github.com

Skip to content

[libc++] Add a job that runs the benchmarks as part of the CI #223

[libc++] Add a job that runs the benchmarks as part of the CI

[libc++] Add a job that runs the benchmarks as part of the CI #223

# This file defines an action that builds the various Docker images used to run
# libc++ CI whenever modifications to those Docker files are pushed to `main`.
#
# The images are pushed to the LLVM package registry at https://github.com/orgs/llvm/packages
# and tagged appropriately. The selection of which Docker image version is used by the libc++
# CI nodes at any given point is controlled from the workflow files themselves.
name: Build Docker images for libc++ CI
permissions:
contents: read
on:
push:
branches:
- main
paths:
- 'libcxx/utils/ci/**'
- '.github/workflows/libcxx-build-containers.yml'
pull_request:
paths:
- 'libcxx/utils/ci/**'
- '.github/workflows/libcxx-build-containers.yml'
jobs:
build-and-push:
runs-on: ubuntu-24.04
if: github.repository_owner == 'llvm'
permissions:
packages: write
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
# 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: |
docker compose build builder-base
docker compose build actions-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@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Push the Linux builder image
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 }}
- 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 }}