ci: fix the ctest sanitize runs (#26593)
* Update build-sanitize.yml * make it run on pr * fix thread * Update build-sanitize.yml * Update build-sanitize.yml * just run thread on github machine
This commit is contained in:
@@ -15,6 +15,12 @@ on:
|
|||||||
'**/*.cpp'
|
'**/*.cpp'
|
||||||
]
|
]
|
||||||
|
|
||||||
|
pull_request:
|
||||||
|
types: [opened, synchronize, reopened]
|
||||||
|
paths: [
|
||||||
|
'.github/workflows/build-sanitize.yml'
|
||||||
|
]
|
||||||
|
|
||||||
concurrency:
|
concurrency:
|
||||||
group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }}
|
group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }}
|
||||||
cancel-in-progress: true
|
cancel-in-progress: true
|
||||||
@@ -28,19 +34,35 @@ env:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
ctest:
|
ctest:
|
||||||
runs-on: [self-hosted, X64, CPU, Linux]
|
|
||||||
|
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
|
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
sanitizer: [ADDRESS, THREAD, UNDEFINED]
|
include:
|
||||||
|
- sanitizer: ADDRESS
|
||||||
|
machine: [self-hosted, X64, Linux]
|
||||||
|
# thread doesn't run properly on some self hosted machines, so run it on Github instead
|
||||||
|
- sanitizer: THREAD
|
||||||
|
machine: ubuntu-24.04
|
||||||
|
- sanitizer: UNDEFINED
|
||||||
|
machine: [self-hosted, X64, Linux]
|
||||||
|
|
||||||
|
runs-on: ${{ matrix.machine }}
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Clone
|
- name: Clone
|
||||||
id: checkout
|
id: checkout
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v6
|
||||||
|
|
||||||
|
- name: ccache
|
||||||
|
uses: ggml-org/ccache-action@v1.2.21
|
||||||
|
if: ${{ matrix.sanitizer == 'THREAD' }}
|
||||||
|
with:
|
||||||
|
key: ctest-thread-ubuntu-24.04
|
||||||
|
variant: ccache
|
||||||
|
evict-old-files: 1d
|
||||||
|
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
|
||||||
|
|
||||||
# with UNDEFINED sanitizer, we have to build in Debug to avoid GCC 13 false-positive warnings
|
# with UNDEFINED sanitizer, we have to build in Debug to avoid GCC 13 false-positive warnings
|
||||||
- name: Build (undefined)
|
- name: Build (undefined)
|
||||||
id: cmake_build_undefined
|
id: cmake_build_undefined
|
||||||
|
|||||||
Reference in New Issue
Block a user