brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.7 KiB · c75d848 Raw
78 lines · yaml
1name: Build CI Tooling Containers2 3permissions:4  contents: read5 6on:7  push:8    branches:9      - main10    paths:11      - .github/workflows/build-ci-container-tooling.yml12      - '.github/workflows/containers/github-action-ci-tooling/**'13      - llvm/utils/git/requirements_formatting.txt14      - llvm/utils/git/requirements_linting.txt15      - '.github/actions/build-container/**'16      - '.github/actions/push-container/**'17  pull_request:18    paths:19      - .github/workflows/build-ci-container-tooling.yml20      - '.github/workflows/containers/github-action-ci-tooling/**'21      - llvm/utils/git/requirements_formatting.txt22      - llvm/utils/git/requirements_linting.txt23      - '.github/actions/build-container/**'24      - '.github/actions/push-container/**'25 26jobs:27  build-ci-container-tooling:28    name: Build Container ${{ matrix.container-name }}29    if: github.repository_owner == 'llvm'30    runs-on: ubuntu-24.0431    strategy:32      fail-fast: false33      matrix:34        include:35          - container-name: format36            test-command: 'cd $HOME && clang-format --version | grep version && git-clang-format -h | grep usage && black --version | grep black'37          - container-name: lint38            test-command: 'cd $HOME && clang-tidy --version | grep version && clang-tidy-diff.py -h | grep usage'39          - container-name: abi-tests40            test-command: 'cd $HOME && abi-compliance-checker --help'41            target: abi-tests42    steps:43      - name: Checkout LLVM44        uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.045        with:46          sparse-checkout: |47            .github/workflows/containers/github-action-ci-tooling/48            llvm/utils/git/requirements_formatting.txt49            llvm/utils/git/requirements_linting.txt50            clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py51            .github/actions/build-container52 53      - name: Build Container54        uses: ./.github/actions/build-container55        with:56          container-name: ci-ubuntu-24.04-${{ matrix.container-name }}57          dockerfile: .github/workflows/containers/github-action-ci-tooling/Dockerfile58          target: ci-container-${{ matrix.target || format('code-{0}', matrix.container-name) }}59          test-command: ${{ matrix.test-command }}60 61  push-ci-container:62    if: github.event_name == 'push'63    needs:64      - build-ci-container-tooling65    permissions:66      packages: write67    runs-on: ubuntu-24.0468    steps:69      - name: Checkout LLVM70        uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.071        with:72          sparse-checkout: |73            .github/actions/push-container74 75      - uses: ./.github/actions/push-container76        with:77          token: ${{ secrets.GITHUB_TOKEN }}78