Skip to content

Commit 3123aca

Browse files
committed
ci: Add ASAN workflow
LSAN to be enabled separately, as it might need work from the maintainer.
1 parent d6a33f6 commit 3123aca

File tree

1 file changed

+57
-0
lines changed

1 file changed

+57
-0
lines changed
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
# SPDX-FileCopyrightText: 2023 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.com>
2+
#
3+
# SPDX-License-Identifier: MIT
4+
5+
name: CI (Sanitizers)
6+
7+
on:
8+
push:
9+
branches:
10+
- master
11+
pull_request:
12+
branches:
13+
- master
14+
workflow_dispatch:
15+
16+
jobs:
17+
build:
18+
runs-on: ${{ matrix.os }}
19+
strategy:
20+
fail-fast: true
21+
matrix:
22+
os:
23+
- ubuntu-24.04
24+
preset: ['dev-asan']
25+
include:
26+
- preset: dev-asan
27+
qt-flavor: asan
28+
steps:
29+
- name: Checkout sources
30+
uses: actions/checkout@v4
31+
32+
- name: Setup Sanitized Qt
33+
uses: KDABLabs/sanitized-qt-action@v1
34+
with:
35+
qt-tag: "v6.11.0-beta2"
36+
qt-flavor: ${{ matrix.qt-flavor }}
37+
38+
- name: Configure project
39+
run: >
40+
cmake --preset=${{ matrix.preset }}
41+
-DCMAKE_BUILD_TYPE=Debug
42+
-DKDReports_QT6=ON
43+
-DKDReports_PYTHON_BINDINGS=OFF
44+
-DKDReports_TESTS=ON
45+
-DKDReports_STATIC=ON
46+
-DKDReports_EXAMPLES=OFF
47+
-DKDReports_DOCS=OFF
48+
49+
- name: Build Project
50+
run: cmake --build ./build-${{ matrix.preset }}
51+
52+
- name: Run tests on Linux (offscreen)
53+
run: |
54+
ctest --test-dir ./build-${{ matrix.preset }} --output-on-failure
55+
env:
56+
QT_QPA_PLATFORM: offscreen
57+
LSAN_OPTIONS: detect_leaks=0 # for now

0 commit comments

Comments
 (0)