Commit 127859a6d3071332bccfcf5ce4d98a4b70fbacee
1 parent
bcfa4079
Run tests with sanitizers in CI
Showing
3 changed files
with
26 additions
and
0 deletions
ChangeLog
| 1 | 2019-06-15 Jay Berkenbilt <ejb@ql.org> | 1 | 2019-06-15 Jay Berkenbilt <ejb@ql.org> |
| 2 | 2 | ||
| 3 | + * Update CI (Azure Pipelines) to run tests with some sanitizers. | ||
| 4 | + | ||
| 3 | * Do "ideal integration" with oss-fuzz. This includes adding a | 5 | * Do "ideal integration" with oss-fuzz. This includes adding a |
| 4 | better fuzzer with a seed corpus and adding automated tests of the | 6 | better fuzzer with a seed corpus and adding automated tests of the |
| 5 | fuzzer with the test data. | 7 | fuzzer with the test data. |
azure-pipelines.yml
| @@ -108,3 +108,15 @@ jobs: | @@ -108,3 +108,15 @@ jobs: | ||
| 108 | displayName: 'Build Fuzzer' | 108 | displayName: 'Build Fuzzer' |
| 109 | dependsOn: Linux | 109 | dependsOn: Linux |
| 110 | condition: succeeded() | 110 | condition: succeeded() |
| 111 | +- job: Sanitizers | ||
| 112 | + pool: | ||
| 113 | + vmImage: ubuntu-16.04 | ||
| 114 | + steps: | ||
| 115 | + - script: azure-pipelines/test-sanitizers | ||
| 116 | + displayName: 'Sanitizer Tests' | ||
| 117 | + - task: PublishTestResults@2 | ||
| 118 | + inputs: | ||
| 119 | + testRunTitle: Sanitizers | ||
| 120 | + buildPlatform: Sanitizers | ||
| 121 | + dependsOn: Linux | ||
| 122 | + condition: succeeded() |
azure-pipelines/test-sanitizers
0 → 100755
| 1 | +#!/bin/bash | ||
| 2 | +set -e | ||
| 3 | +sudo apt-get update | ||
| 4 | +sudo apt-get -y install \ | ||
| 5 | + autoconf build-essential zlib1g-dev libjpeg-dev | ||
| 6 | +./configure \ | ||
| 7 | + CFLAGS="-fsanitize=address -fsanitize=undefined -g" \ | ||
| 8 | + CXXFLAGS="-fsanitize=address -fsanitize=undefined -g" \ | ||
| 9 | + LDFLAGS="-fsanitize=address -fsanitize=undefined" \ | ||
| 10 | + --enable-werror --disable-shared --enable-show-failed-test-output | ||
| 11 | +make -j$(nproc) -k | ||
| 12 | +make -k check |