Repository navigation
猬嗭笍馃獫 update pre-commit hooks #146
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
| cancel-in-progress: true | |
| defaults: | |
| run: | |
| shell: bash | |
| env: | |
| CMAKE_BUILD_PARALLEL_LEVEL: 3 | |
| CTEST_PARALLEL_LEVEL: 3 | |
| jobs: | |
| cpp-tests: | |
| name: Tests ${{ matrix.config.os }} | |
| runs-on: ${{ matrix.config.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| config: | |
| - { os: ubuntu-latest, toolchain: "" } | |
| - { os: macos-latest, toolchain: "" } | |
| - { os: windows-latest, toolchain: "-T ClangCl" } | |
| steps: | |
| - uses: actions/checkout@v3 | |
| with: | |
| submodules: recursive | |
| - name: Configure CMake | |
| run: cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DBUILD_MISIM_TESTS=ON ${{ matrix.config.toolchain }} | |
| - name: Build | |
| run: cmake --build build --config Release | |
| - name: Test | |
| run: ctest -C Release --output-on-failure --test-dir build --repeat until-pass:3 --timeout 300 | |
| - if: runner.os == 'Linux' | |
| name: Coverage | |
| run: | | |
| cmake -S . -B buildCov -DCMAKE_BUILD_TYPE=Debug -DBUILD_MISIM_TESTS=ON -DENABLE_COVERAGE=ON | |
| cmake --build buildCov --config Debug | |
| ctest -C Debug --output-on-failure --test-dir buildCov --repeat until-pass:3 --timeout 300 | |
| - if: runner.os == 'Linux' | |
| name: Upload coverage to Codecov | |
| uses: codecov/codecov-action@v3.1.1 | |
| with: | |
| fail_ci_if_error: true | |
| gcov: true | |
| gcov_ignore: "extern/**/*" | |
| token: ${{ secrets.CODECOV_TOKEN }} |