aboutsummaryrefslogtreecommitdiff
path: root/ci/azure-tsan.yml
blob: 198b187abf038abbd32182ac8b59e0eab621baeb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
jobs:
- job: ${{ parameters.name }}
  displayName: TSAN
  pool:
    vmImage: ubuntu-16.04

  steps:
  - template: azure-install-rust.yml
    parameters:
      rust_version: ${{ parameters.rust_version }}

  - script: |
      set -e

      export RUST_TEST_THREADS=1
      export ASAN_OPTIONS="detect_odr_violation=0 detect_leaks=0"
      export TSAN_OPTIONS="suppressions=`pwd`/ci/tsan"

      # Run address sanitizer
      RUSTFLAGS="-Z sanitizer=address" \
      cargo test --target x86_64-unknown-linux-gnu --test test_bytes --test test_buf --test test_buf_mut

      # Run thread sanitizer
      RUSTFLAGS="-Z sanitizer=thread" \
      cargo test --target x86_64-unknown-linux-gnu --test test_bytes --test test_buf --test test_buf_mut
    displayName: TSAN / MSAN