diff options
author | practicalswift <practicalswift@users.noreply.github.com> | 2018-11-27 10:21:29 +0100 |
---|---|---|
committer | practicalswift <practicalswift@users.noreply.github.com> | 2018-12-17 09:24:37 +0100 |
commit | 069752b72613b772a9536a3e7f15fa75097f2946 (patch) | |
tree | e0eaa687154c6c0528ea6380b9cb20151b61bdc2 /.travis | |
parent | 9133227298ad97bbb10c44ac038f614c0bd7f7c7 (diff) |
build: Enable functional tests in the ThreadSanitizer (TSan) build job
Diffstat (limited to '.travis')
-rwxr-xr-x | .travis/test_04_install.sh | 3 | ||||
-rwxr-xr-x | .travis/test_06_script.sh | 16 |
2 files changed, 15 insertions, 4 deletions
diff --git a/.travis/test_04_install.sh b/.travis/test_04_install.sh index 03a61ea9f8..3f74158117 100755 --- a/.travis/test_04_install.sh +++ b/.travis/test_04_install.sh @@ -7,9 +7,10 @@ export LC_ALL=C.UTF-8 travis_retry docker pull "$DOCKER_NAME_TAG" +mkdir -p "${TRAVIS_BUILD_DIR}/sanitizer-output/" export ASAN_OPTIONS="" export LSAN_OPTIONS="suppressions=${TRAVIS_BUILD_DIR}/test/sanitizer_suppressions/lsan" -export TSAN_OPTIONS="suppressions=${TRAVIS_BUILD_DIR}/test/sanitizer_suppressions/tsan" +export TSAN_OPTIONS="suppressions=${TRAVIS_BUILD_DIR}/test/sanitizer_suppressions/tsan:log_path=${TRAVIS_BUILD_DIR}/sanitizer-output/tsan" export UBSAN_OPTIONS="suppressions=${TRAVIS_BUILD_DIR}/test/sanitizer_suppressions/ubsan:print_stacktrace=1:halt_on_error=1" env | grep -E '^(BITCOIN_CONFIG|CCACHE_|WINEDEBUG|LC_ALL|BOOST_TEST_RANDOM|CONFIG_SHELL|(ASAN|LSAN|TSAN|UBSAN)_OPTIONS)' | tee /tmp/env if [[ $HOST = *-mingw32 ]]; then diff --git a/.travis/test_06_script.sh b/.travis/test_06_script.sh index 506d2b518c..6883872410 100755 --- a/.travis/test_06_script.sh +++ b/.travis/test_06_script.sh @@ -41,12 +41,19 @@ DOCKER_EXEC ./configure --cache-file=../config.cache $BITCOIN_CONFIG_ALL $BITCOI END_FOLD BEGIN_FOLD build -DOCKER_EXEC make $MAKEJOBS $GOAL || ( echo "Build failure. Verbose build follows." && DOCKER_EXEC make $GOAL V=1 ; false ) +DOCKER_EXEC make $MAKEJOBS $GOAL || ( + echo "Build failure. Verbose build follows." && DOCKER_EXEC make $GOAL V=1 + DOCKER_EXEC "cat ${TRAVIS_BUILD_DIR}/sanitizer-output/* 2> /dev/null" + false +) END_FOLD if [ "$RUN_UNIT_TESTS" = "true" ]; then BEGIN_FOLD unit-tests - DOCKER_EXEC LD_LIBRARY_PATH=$TRAVIS_BUILD_DIR/depends/$HOST/lib make $MAKEJOBS check VERBOSE=1 + DOCKER_EXEC LD_LIBRARY_PATH=$TRAVIS_BUILD_DIR/depends/$HOST/lib make $MAKEJOBS check VERBOSE=1 || ( + DOCKER_EXEC "cat ${TRAVIS_BUILD_DIR}/sanitizer-output/* 2> /dev/null" + false + ) END_FOLD fi @@ -56,6 +63,9 @@ fi if [ "$RUN_FUNCTIONAL_TESTS" = "true" ]; then BEGIN_FOLD functional-tests - DOCKER_EXEC test/functional/test_runner.py --ci --combinedlogslen=4000 --coverage --quiet --failfast ${extended} ${FUNCTIONAL_TESTS_CONFIG} + DOCKER_EXEC test/functional/test_runner.py --ci --combinedlogslen=4000 --coverage --quiet --failfast ${extended} ${FUNCTIONAL_TESTS_CONFIG} || ( + DOCKER_EXEC "cat ${TRAVIS_BUILD_DIR}/sanitizer-output/* 2> /dev/null" + false + ) END_FOLD fi |