diff --git a/.github/workflows/cpp.yml b/.github/workflows/cpp.yml index 713aeaeaa..917c3157a 100644 --- a/.github/workflows/cpp.yml +++ b/.github/workflows/cpp.yml @@ -173,15 +173,13 @@ jobs: sanitize: name: Sanitize ${{ matrix.sanitizer.detects }} needs: test - runs-on: ${{ matrix.sanitizer.os }} + runs-on: ubuntu-22.04 strategy: matrix: sanitizer: - - { name: UBSAN, detects: 'undefined behavior', os: ubuntu-20.04 } - - { name: ASAN, detects: 'addressability and leaks', os: ubuntu-20.04 } - - { name: TSAN, detects: 'data races and deadlocks', os: ubuntu-22.04 } - # NOTE: We run TSAN on Ubuntu 22.04 since it's broken on 20.04, see: - # https://bugs.launchpad.net/ubuntu/+source/gcc-10/+bug/2029910. + - { name: UBSAN, detects: 'undefined behavior' } + - { name: ASAN, detects: 'addressability and leaks' } + - { name: TSAN, detects: 'data races and deadlocks' } # NOTE: MSAN is not used for now since it also requires all deps to be # instrumented (recompiled with clang and the MSan flags, LLVM's # stdlib instead of GCCs,...). We therefore use Valgrind to @@ -199,7 +197,7 @@ jobs: - name: Setup ccache uses: hendrikmuhs/ccache-action@v1.2 with: - key: ${{ secrets.CCACHE_CACHE_VERSION }}|${{ matrix.sanitizer.os }}-gcc-${{ matrix.sanitizer.name }} + key: ${{ secrets.CCACHE_CACHE_VERSION }}|ubuntu-22.04-gcc-${{ matrix.sanitizer.name }} create-symlink: true - name: Setup GTest