Skip to content

Commit ad6865e

Browse files
committed
Run with sanitizers
1 parent c123828 commit ad6865e

File tree

2 files changed

+48
-12
lines changed

2 files changed

+48
-12
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
[settings]
2+
arch={{detect_api.detect_arch()}}
3+
build_type=Release
4+
compiler=apple-clang
5+
compiler.cppstd=20
6+
compiler.libcxx=libc++
7+
compiler.version=17.0
8+
os=Macos

.github/workflows/build.yml

Lines changed: 40 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,36 @@ on:
66
branches: [main]
77
workflow_dispatch:
88

9+
concurrency:
10+
# Only cancel in-progress jobs or runs for the current workflow - matches against branch & tags
11+
group: ${{ github.workflow }}-${{ github.ref }}
12+
cancel-in-progress: true
13+
914
jobs:
1015
build-and-test:
11-
runs-on: heavy
12-
container: ghcr.io/xrplf/clio-ci:14342e087ceb8b593027198bf9ef06a43833c696
13-
1416
strategy:
17+
fail-fast: false
1518
matrix:
16-
conan_profile: [gcc, clang]
19+
compiler: [gcc, clang]
20+
sanitizer_ext: [.asan, .tsan, .ubsan]
1721
build_type: [Release, Debug]
22+
os: [heavy, heavy-arm64]
23+
container:
24+
[
25+
'{ "image": "ghcr.io/xrplf/clio-ci:14342e087ceb8b593027198bf9ef06a43833c696" }',
26+
]
27+
28+
include:
29+
- compiler: apple-clang
30+
build_type: Release
31+
os: macos15
32+
- compiler: apple-clang
33+
build_type: Debug
34+
os: macos15
35+
36+
runs-on: ${{ matrix.os }}
37+
container: ${{ matrix.container != '' && fromJson(matrix.container) || null }}
38+
timeout-minutes: 10
1839

1940
env:
2041
BUILD_DIR: build
@@ -34,17 +55,24 @@ jobs:
3455
with:
3556
enable_ccache: false
3657

58+
- name: Set up Conan (macOS)
59+
if: ${{ runner.os == 'macOS' }}
60+
run: |
61+
conan remote add --index 0 xrplf https://conan.ripplex.io
62+
63+
mkdir -p "${CONAN_HOME}"/profiles/
64+
cp .github/scripts/conan/apple-clang.profile "${CONAN_HOME}"/profiles/apple-clang
65+
3766
- name: Run Conan
3867
env:
39-
CONAN_PROFILE: ${{ matrix.conan_profile }}
68+
CONAN_PROFILE: ${{ matrix.compiler }}${{ matrix.sanitizer_ext }}
4069
run: |
41-
conan \
42-
install . \
43-
-of "${BUILD_DIR}" \
44-
-b missing \
45-
-s "build_type=${BUILD_TYPE}" \
46-
-o "&:with_tests=True" \
47-
--profile:all "${CONAN_PROFILE}"
70+
conan install . \
71+
-of "${BUILD_DIR}" \
72+
-b missing \
73+
-s "build_type=${BUILD_TYPE}" \
74+
-o "&:with_tests=True" \
75+
--profile:all "${CONAN_PROFILE}"
4876
4977
- name: Run CMake
5078
run: |

0 commit comments

Comments
 (0)