cdbbb9507c
cpp-template / format (ubuntu-22.04) (push) Successful in 1m5s
cpp-template / format (ubuntu-24.04) (push) Successful in 1m7s
cpp-template / debug (ubuntu-22.04) (push) Successful in 2m15s
cpp-template / debug (ubuntu-24.04) (push) Successful in 2m24s
cpp-template / clang-tidy (ubuntu-22.04) (push) Failing after 1m41s
cpp-template / clang-tidy (ubuntu-24.04) (push) Failing after 1m42s
cpp-template / release (ubuntu-22.04) (push) Successful in 2m10s
cpp-template / release (ubuntu-24.04) (push) Successful in 2m11s
cpp-template / install-consumer (ubuntu-22.04) (push) Successful in 1m28s
cpp-template / install-consumer (ubuntu-24.04) (push) Successful in 1m30s
cpp-template / asan (ubuntu-22.04) (push) Successful in 1m37s
cpp-template / asan (ubuntu-24.04) (push) Successful in 1m37s
cpp-template / tsan (ubuntu-22.04) (push) Failing after 1m30s
cpp-template / tsan (ubuntu-24.04) (push) Successful in 1m36s
cpp-template / fuzz-smoke (ubuntu-22.04) (push) Successful in 6m46s
cpp-template / fuzz-smoke (ubuntu-24.04) (push) Successful in 6m51s
cpp-template / format (ubuntu-20.04) (push) Has been cancelled
cpp-template / debug (ubuntu-20.04) (push) Has been cancelled
cpp-template / clang-tidy (ubuntu-20.04) (push) Has been cancelled
cpp-template / release (ubuntu-20.04) (push) Has been cancelled
cpp-template / install-consumer (ubuntu-20.04) (push) Has been cancelled
cpp-template / asan (ubuntu-20.04) (push) Has been cancelled
cpp-template / tsan (ubuntu-20.04) (push) Has been cancelled
cpp-template / fuzz-smoke (ubuntu-20.04) (push) Has been cancelled
cpp-template / no-network-negative (ubuntu-20.04) (push) Has been cancelled
cpp-template / no-network-negative (ubuntu-24.04) (push) Has been cancelled
cpp-template / no-network-negative (ubuntu-22.04) (push) Has been cancelled
194 lines
7.0 KiB
YAML
194 lines
7.0 KiB
YAML
name: cpp-template
|
|
on:
|
|
push:
|
|
pull_request:
|
|
|
|
jobs:
|
|
format:
|
|
strategy:
|
|
matrix:
|
|
ubuntu_version: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04]
|
|
runs-on: ${{ matrix.ubuntu_version }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Check formatting
|
|
run: python3 scripts/format.py --check
|
|
|
|
debug:
|
|
strategy:
|
|
matrix:
|
|
ubuntu_version: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04]
|
|
runs-on: ${{ matrix.ubuntu_version }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Configure, build, and test debug preset
|
|
run: cmake --preset debug && cmake --build --preset debug && ctest --preset debug --output-on-failure
|
|
- name: Upload debug failure evidence
|
|
if: always()
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: debug-failure-evidence-${{ matrix.ubuntu_version }}
|
|
path: |
|
|
.sisyphus/evidence/**
|
|
build/**/Testing/Temporary/LastTest.log
|
|
build/**/CMakeCache.txt
|
|
build/**/CMakeFiles/CMakeOutput.log
|
|
build/**/CMakeFiles/CMakeError.log
|
|
|
|
clang-tidy:
|
|
strategy:
|
|
matrix:
|
|
ubuntu_version: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04]
|
|
runs-on: ${{ matrix.ubuntu_version }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Configure debug preset for compile commands
|
|
run: cmake --preset debug
|
|
- name: Run clang-tidy
|
|
run: python3 scripts/clang_tidy.py --build-dir build/debug
|
|
- name: Upload clang-tidy failure evidence
|
|
if: always()
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: clang-tidy-failure-evidence-${{ matrix.ubuntu_version }}
|
|
path: |
|
|
.sisyphus/evidence/**
|
|
build/**/Testing/Temporary/LastTest.log
|
|
build/**/CMakeCache.txt
|
|
build/**/CMakeFiles/CMakeOutput.log
|
|
build/**/CMakeFiles/CMakeError.log
|
|
|
|
release:
|
|
strategy:
|
|
matrix:
|
|
ubuntu_version: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04]
|
|
runs-on: ${{ matrix.ubuntu_version }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Configure, build, and test release preset
|
|
run: cmake --preset release && cmake --build --preset release && ctest --preset release --output-on-failure
|
|
- name: Upload release failure evidence
|
|
if: always()
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: release-failure-evidence-${{ matrix.ubuntu_version }}
|
|
path: |
|
|
.sisyphus/evidence/**
|
|
build/**/Testing/Temporary/LastTest.log
|
|
build/**/CMakeCache.txt
|
|
build/**/CMakeFiles/CMakeOutput.log
|
|
build/**/CMakeFiles/CMakeError.log
|
|
|
|
install-consumer:
|
|
strategy:
|
|
matrix:
|
|
ubuntu_version: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04]
|
|
runs-on: ${{ matrix.ubuntu_version }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Run install-consumer QA
|
|
run: python3 scripts/dev_check.py install-consumer
|
|
- name: Upload install-consumer failure evidence
|
|
if: always()
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: install-consumer-failure-evidence-${{ matrix.ubuntu_version }}
|
|
path: |
|
|
.sisyphus/evidence/**
|
|
build/**/Testing/Temporary/LastTest.log
|
|
build/**/CMakeCache.txt
|
|
build/**/CMakeFiles/CMakeOutput.log
|
|
build/**/CMakeFiles/CMakeError.log
|
|
|
|
asan:
|
|
strategy:
|
|
matrix:
|
|
ubuntu_version: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04]
|
|
runs-on: ${{ matrix.ubuntu_version }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Configure, build, and test ASan preset
|
|
run: cmake --preset asan && cmake --build --preset asan && ctest --preset asan --output-on-failure
|
|
- name: Upload ASan failure evidence
|
|
if: always()
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: asan-failure-evidence-${{ matrix.ubuntu_version }}
|
|
path: |
|
|
.sisyphus/evidence/**
|
|
build/**/Testing/Temporary/LastTest.log
|
|
build/**/CMakeCache.txt
|
|
build/**/CMakeFiles/CMakeOutput.log
|
|
build/**/CMakeFiles/CMakeError.log
|
|
|
|
tsan:
|
|
strategy:
|
|
matrix:
|
|
ubuntu_version: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04]
|
|
runs-on: ${{ matrix.ubuntu_version }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Configure, build, and test TSan preset
|
|
run: cmake --preset tsan && cmake --build --preset tsan && ctest --preset tsan --output-on-failure
|
|
- name: Upload TSan failure evidence
|
|
if: always()
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: tsan-failure-evidence-${{ matrix.ubuntu_version }}
|
|
path: |
|
|
.sisyphus/evidence/**
|
|
build/**/Testing/Temporary/LastTest.log
|
|
build/**/CMakeCache.txt
|
|
build/**/CMakeFiles/CMakeOutput.log
|
|
build/**/CMakeFiles/CMakeError.log
|
|
|
|
fuzz-smoke:
|
|
strategy:
|
|
matrix:
|
|
ubuntu_version: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04]
|
|
runs-on: ${{ matrix.ubuntu_version }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Configure, build, and run deterministic fuzz smoke
|
|
run: FUZZTEST_PRNG_SEED=42 cmake --preset fuzz && cmake --build --preset fuzz && FUZZTEST_PRNG_SEED=42 ctest --preset fuzz --output-on-failure -L fuzz_smoke
|
|
- name: Upload fuzz smoke failure evidence
|
|
if: always()
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: fuzz-smoke-failure-evidence-${{ matrix.ubuntu_version }}
|
|
path: |
|
|
.sisyphus/evidence/**
|
|
build/**/Testing/Temporary/LastTest.log
|
|
build/**/CMakeCache.txt
|
|
build/**/CMakeFiles/CMakeOutput.log
|
|
build/**/CMakeFiles/CMakeError.log
|
|
|
|
no-network-negative:
|
|
strategy:
|
|
matrix:
|
|
ubuntu_version: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04]
|
|
runs-on: ${{ matrix.ubuntu_version }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Check default configure avoids network fetches
|
|
run: python3 scripts/dev_check.py no-network-default
|
|
- name: Check fuzz lane avoids network fetches
|
|
run: python3 scripts/dev_check.py no-network-fuzztest-lane
|
|
- name: Check missing archive hash diagnostics
|
|
run: python3 scripts/dev_check.py no-network-missing-archive
|
|
- name: Check vendored GoogleTest isolation
|
|
run: python3 scripts/dev_check.py gtest-isolation
|
|
- name: Check FuzzTest optional feature diagnostics
|
|
run: python3 scripts/dev_check.py fuzztest-optional-features
|
|
- name: Upload no-network and negative-check failure evidence
|
|
if: always()
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: no-network-negative-failure-evidence-${{ matrix.ubuntu_version }}
|
|
path: |
|
|
.sisyphus/evidence/**
|
|
build/**/Testing/Temporary/LastTest.log
|
|
build/**/CMakeCache.txt
|
|
build/**/CMakeFiles/CMakeOutput.log
|
|
build/**/CMakeFiles/CMakeError.log
|