Skip to content

Commit

Permalink
Reduce configuration to avoid spamming the bots while we are testing
Browse files Browse the repository at this point in the history
  • Loading branch information
ldionne committed May 7, 2024
1 parent 2433433 commit ca9e500
Showing 1 changed file with 150 additions and 156 deletions.
306 changes: 150 additions & 156 deletions .github/workflows/libcxx-build-and-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -55,16 +55,10 @@ jobs:
fail-fast: false
matrix:
config: [
'generic-cxx03',
'generic-cxx26',
'generic-modules'
]
cc: [ 'clang-19' ]
cxx: [ 'clang++-19' ]
include:
- config: 'generic-gcc'
cc: 'gcc-13'
cxx: 'g++-13'
steps:
- uses: actions/checkout@v4
- name: ${{ matrix.config }}.${{ matrix.cxx }}
Expand All @@ -83,115 +77,115 @@ jobs:
**/CMakeOutput.log
**/crash_diagnostics/*
stage2:
if: github.repository_owner == 'llvm'
runs-on: libcxx-runners-8-set
needs: [ stage1 ]
continue-on-error: false
strategy:
fail-fast: false
matrix:
config: [
'generic-cxx11',
'generic-cxx14',
'generic-cxx17',
'generic-cxx20',
'generic-cxx23'
]
cc: [ 'clang-19' ]
cxx: [ 'clang++-19' ]
include:
- config: 'generic-gcc-cxx11'
cc: 'gcc-13'
cxx: 'g++-13'
- config: 'generic-cxx23'
cc: 'clang-17'
cxx: 'clang++-17'
- config: 'generic-cxx26'
cc: 'clang-18'
cxx: 'clang++-18'
steps:
- uses: actions/checkout@v4
- name: ${{ matrix.config }}
run: libcxx/utils/ci/run-buildbot ${{ matrix.config }}
env:
CC: ${{ matrix.cc }}
CXX: ${{ matrix.cxx }}
- uses: actions/upload-artifact@26f96dfa697d77e81fd5907df203aa23a56210a8 # v4.3.0
if: always() # Upload artifacts even if the build or test suite fails
with:
name: ${{ matrix.config }}-${{ matrix.cxx }}-results
path: |
**/test-results.xml
**/*.abilist
**/CMakeError.log
**/CMakeOutput.log
**/crash_diagnostics/*
# stage2:
# if: github.repository_owner == 'llvm'
# runs-on: libcxx-runners-8-set
# needs: [ stage1 ]
# continue-on-error: false
# strategy:
# fail-fast: false
# matrix:
# config: [
# 'generic-cxx11',
# 'generic-cxx14',
# 'generic-cxx17',
# 'generic-cxx20',
# 'generic-cxx23'
# ]
# cc: [ 'clang-19' ]
# cxx: [ 'clang++-19' ]
# include:
# - config: 'generic-gcc-cxx11'
# cc: 'gcc-13'
# cxx: 'g++-13'
# - config: 'generic-cxx23'
# cc: 'clang-17'
# cxx: 'clang++-17'
# - config: 'generic-cxx26'
# cc: 'clang-18'
# cxx: 'clang++-18'
# steps:
# - uses: actions/checkout@v4
# - name: ${{ matrix.config }}
# run: libcxx/utils/ci/run-buildbot ${{ matrix.config }}
# env:
# CC: ${{ matrix.cc }}
# CXX: ${{ matrix.cxx }}
# - uses: actions/upload-artifact@26f96dfa697d77e81fd5907df203aa23a56210a8 # v4.3.0
# if: always() # Upload artifacts even if the build or test suite fails
# with:
# name: ${{ matrix.config }}-${{ matrix.cxx }}-results
# path: |
# **/test-results.xml
# **/*.abilist
# **/CMakeError.log
# **/CMakeOutput.log
# **/crash_diagnostics/*

stage3:
if: github.repository_owner == 'llvm'
needs: [ stage1, stage2 ]
continue-on-error: false
strategy:
fail-fast: false
max-parallel: 8
matrix:
config: [
'generic-abi-unstable',
'generic-hardening-mode-debug',
'generic-hardening-mode-extensive',
'generic-hardening-mode-fast',
'generic-hardening-mode-fast-with-abi-breaks',
'generic-merged',
'generic-modules-lsv',
'generic-no-exceptions',
'generic-no-experimental',
'generic-no-filesystem',
'generic-no-localization',
'generic-no-random_device',
'generic-no-threads',
'generic-no-tzdb',
'generic-no-unicode',
'generic-no-wide-characters',
'generic-no-rtti',
'generic-optimized-speed',
'generic-static',
# TODO Find a better place for the benchmark and bootstrapping builds to live. They're either very expensive
# or don't provide much value since the benchmark run results are too noise on the bots.
'benchmarks',
'bootstrapping-build'
]
machine: [ 'libcxx-runners-8-set' ]
include:
- config: 'generic-cxx26'
machine: libcxx-runners-8-set
- config: 'generic-asan'
machine: libcxx-runners-8-set
- config: 'generic-tsan'
machine: libcxx-runners-8-set
- config: 'generic-ubsan'
machine: libcxx-runners-8-set
# Use a larger machine for MSAN to avoid timeout and memory allocation issues.
- config: 'generic-msan'
machine: libcxx-runners-8-set
runs-on: ${{ matrix.machine }}
steps:
- uses: actions/checkout@v4
- name: ${{ matrix.config }}
run: libcxx/utils/ci/run-buildbot ${{ matrix.config }}
env:
CC: clang-19
CXX: clang++-19
- uses: actions/upload-artifact@26f96dfa697d77e81fd5907df203aa23a56210a8 # v4.3.0
if: always()
with:
name: ${{ matrix.config }}-results
path: |
**/test-results.xml
**/*.abilist
**/CMakeError.log
**/CMakeOutput.log
**/crash_diagnostics/*
# stage3:
# if: github.repository_owner == 'llvm'
# needs: [ stage1, stage2 ]
# continue-on-error: false
# strategy:
# fail-fast: false
# max-parallel: 8
# matrix:
# config: [
# 'generic-abi-unstable',
# 'generic-hardening-mode-debug',
# 'generic-hardening-mode-extensive',
# 'generic-hardening-mode-fast',
# 'generic-hardening-mode-fast-with-abi-breaks',
# 'generic-merged',
# 'generic-modules-lsv',
# 'generic-no-exceptions',
# 'generic-no-experimental',
# 'generic-no-filesystem',
# 'generic-no-localization',
# 'generic-no-random_device',
# 'generic-no-threads',
# 'generic-no-tzdb',
# 'generic-no-unicode',
# 'generic-no-wide-characters',
# 'generic-no-rtti',
# 'generic-optimized-speed',
# 'generic-static',
# # TODO Find a better place for the benchmark and bootstrapping builds to live. They're either very expensive
# # or don't provide much value since the benchmark run results are too noise on the bots.
# 'benchmarks',
# 'bootstrapping-build'
# ]
# machine: [ 'libcxx-runners-8-set' ]
# include:
# - config: 'generic-cxx26'
# machine: libcxx-runners-8-set
# - config: 'generic-asan'
# machine: libcxx-runners-8-set
# - config: 'generic-tsan'
# machine: libcxx-runners-8-set
# - config: 'generic-ubsan'
# machine: libcxx-runners-8-set
# # Use a larger machine for MSAN to avoid timeout and memory allocation issues.
# - config: 'generic-msan'
# machine: libcxx-runners-8-set
# runs-on: ${{ matrix.machine }}
# steps:
# - uses: actions/checkout@v4
# - name: ${{ matrix.config }}
# run: libcxx/utils/ci/run-buildbot ${{ matrix.config }}
# env:
# CC: clang-19
# CXX: clang++-19
# - uses: actions/upload-artifact@26f96dfa697d77e81fd5907df203aa23a56210a8 # v4.3.0
# if: always()
# with:
# name: ${{ matrix.config }}-results
# path: |
# **/test-results.xml
# **/*.abilist
# **/CMakeError.log
# **/CMakeOutput.log
# **/crash_diagnostics/*

macos:
runs-on: macos-14
Expand Down Expand Up @@ -225,45 +219,45 @@ jobs:
**/CMakeOutput.log
**/crash_diagnostics/*
windows:
runs-on: windows-2022
needs: [ stage1 ]
strategy:
fail-fast: false
matrix:
include:
- { config: clang-cl-dll, mingw: false }
- { config: clang-cl-static, mingw: false }
- { config: clang-cl-no-vcruntime, mingw: false }
- { config: clang-cl-debug, mingw: false }
- { config: clang-cl-static-crt, mingw: false }
- { config: mingw-dll, mingw: true }
- { config: mingw-static, mingw: true }
- { config: mingw-dll-i686, mingw: true }
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
choco install -y ninja wget
pip install psutil
- name: Install a current LLVM
if: ${{ matrix.mingw != true }}
run: |
choco install -y llvm --version=17.0.6
- name: Install llvm-mingw
if: ${{ matrix.mingw == true }}
run: |
curl -LO https://github.com/mstorsjo/llvm-mingw/releases/download/20231128/llvm-mingw-20231128-ucrt-x86_64.zip
powershell Expand-Archive llvm-mingw*.zip -DestinationPath .
del llvm-mingw*.zip
mv llvm-mingw* c:\llvm-mingw
echo "c:\llvm-mingw\bin" | Out-File -FilePath $Env:GITHUB_PATH -Encoding utf8 -Append
- name: Add Git Bash to the path
run: |
echo "c:\Program Files\Git\usr\bin" | Out-File -FilePath $Env:GITHUB_PATH -Encoding utf8 -Append
- name: Set up the MSVC dev environment
if: ${{ matrix.mingw != true }}
uses: ilammy/msvc-dev-cmd@v1
- name: Build and test
run: |
bash libcxx/utils/ci/run-buildbot ${{ matrix.config }}
# windows:
# runs-on: windows-2022
# needs: [ stage1 ]
# strategy:
# fail-fast: false
# matrix:
# include:
# - { config: clang-cl-dll, mingw: false }
# - { config: clang-cl-static, mingw: false }
# - { config: clang-cl-no-vcruntime, mingw: false }
# - { config: clang-cl-debug, mingw: false }
# - { config: clang-cl-static-crt, mingw: false }
# - { config: mingw-dll, mingw: true }
# - { config: mingw-static, mingw: true }
# - { config: mingw-dll-i686, mingw: true }
# steps:
# - uses: actions/checkout@v4
# - name: Install dependencies
# run: |
# choco install -y ninja wget
# pip install psutil
# - name: Install a current LLVM
# if: ${{ matrix.mingw != true }}
# run: |
# choco install -y llvm --version=17.0.6
# - name: Install llvm-mingw
# if: ${{ matrix.mingw == true }}
# run: |
# curl -LO https://github.com/mstorsjo/llvm-mingw/releases/download/20231128/llvm-mingw-20231128-ucrt-x86_64.zip
# powershell Expand-Archive llvm-mingw*.zip -DestinationPath .
# del llvm-mingw*.zip
# mv llvm-mingw* c:\llvm-mingw
# echo "c:\llvm-mingw\bin" | Out-File -FilePath $Env:GITHUB_PATH -Encoding utf8 -Append
# - name: Add Git Bash to the path
# run: |
# echo "c:\Program Files\Git\usr\bin" | Out-File -FilePath $Env:GITHUB_PATH -Encoding utf8 -Append
# - name: Set up the MSVC dev environment
# if: ${{ matrix.mingw != true }}
# uses: ilammy/msvc-dev-cmd@v1
# - name: Build and test
# run: |
# bash libcxx/utils/ci/run-buildbot ${{ matrix.config }}

0 comments on commit ca9e500

Please sign in to comment.