[libcxx] [llvm] Add libc++ github actions workflow to replace buildkite (PR #71836)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 16 16:18:00 PST 2023
================
@@ -0,0 +1,112 @@
+name: Build and Test libc++
+
+on: pull_request
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
+ cancel-in-progress: true
+
+
+env:
+ CMAKE: "/opt/bin/cmake"
+
+# Comment
+jobs:
+ stage1:
+ runs-on: libcxx-runners-16
+ continue-on-error: false
+ strategy:
+ fail-fast: true
+ matrix:
+ config: [ 'generic-cxx26', 'generic-cxx03', 'generic-modules' ]
+ cc: [ 'clang-18' ]
+ cxx: [ 'clang++-18' ]
+ include:
+ - config: 'generic-gcc'
+ cc: 'gcc-13'
+ cxx: 'g++-13'
+ steps:
+ - uses: actions/checkout at v4
+ - name: ${{ matrix.config }}.${{ matrix.cxx }}
+ run: libcxx/utils/ci/run-buildbot ${{ matrix.config }}
+ env:
+ CC: ${{ matrix.cc }}
+ CXX: ${{ matrix.cxx }}
+ - uses: actions/upload-artifact at v3
+ if: always()
+ with:
+ name: ${{ matrix.config }}-${{ matrix.cxx }}-results
+ path: |
+ "**/test-results.xml"
+ "**/*.abilist"
+ stage2:
+ runs-on: libcxx-runners-8
+ needs: [ stage1 ]
+ continue-on-error: false
+ strategy:
+ fail-fast: true
+ matrix:
+ config: [ 'generic-cxx11', 'generic-cxx14', 'generic-cxx17',
+ 'generic-cxx20', 'generic-cxx23' ]
+ include:
+ - config: 'generic-gcc-cxx11'
+ cc: 'gcc-13'
+ cxx: 'g++-13'
+ - config: 'generic-cxx23'
+ cc: 'clang-16'
+ cxx: 'clang++-16'
+ - config: 'generic-cxx23'
+ cc: 'clang-17'
+ cxx: 'clang++-17'
+ steps:
+ - uses: actions/checkout at v4
+ - name: ${{ matrix.config }}
+ run: libcxx/utils/ci/run-buildbot ${{ matrix.config }}
+ env:
+ CC: 'clang-18'
+ CXX: 'clang++-18'
+ - uses: actions/upload-artifact at v3
+ if: always()
+ with:
+ name: ${{ matrix.config }}-results
+ path: |
+ **/test-results.xml
+ **/*.abilist
+ stage3:
+ needs: [ stage1, stage2 ]
+ continue-on-error: false
+ strategy:
+ fail-fast: true
+ max-parallel: 8
+ matrix:
+ config: [ 'generic-no-threads', 'generic-no-filesystem', 'generic-no-random_device',
+ 'generic-no-localization', 'generic-no-unicode', 'generic-no-wide-characters',
+ 'generic-no-experimental', 'generic-no-exceptions', 'generic-abi-unstable', 'generic-hardening-mode-fast',
+ 'generic-hardening-mode-fast-with-abi-breaks', 'generic-hardening-mode-extensive',
+ 'generic-hardening-mode-debug', 'generic-with_llvm_unwinder', 'generic-static', 'generic-merged',
+ 'generic-modules-lsv', 'generic-no-tzdb' ]
+ machine: [ 'libcxx-runners-8' ]
+ include:
+ - config: 'generic-asan'
+ machine: libcxx-runners-16
+ - config: 'generic-tsan'
+ machine: libcxx-runners-16
+ - config: 'generic-ubsan'
+ machine: libcxx-runners-8
+ - config: 'generic-msan'
+ machine: libcxx-runners-30
+ runs-on: ${{ matrix.machine }}
+ steps:
+ - uses: actions/checkout at v4
+ - name: ${{ matrix.config }}
+ run: libcxx/utils/ci/run-buildbot ${{ matrix.config }}
+ env:
+ CC: clang-18
+ CXX: clang++-18
----------------
EricWF wrote:
I think I'm going to have to punt on these requested changes for the moment.
Github action doesn't support env substitution in the context we need it. So a more involved solution will be needed.
Rest assured I have plans to clean this up in short order.
https://github.com/llvm/llvm-project/pull/71836
More information about the llvm-commits
mailing list