From f5f9a580dd4a3cf487b2d49ed70a13d8aaf373da Mon Sep 17 00:00:00 2001 From: Evgeny Vereshchagin Date: Tue, 20 Nov 2018 15:47:11 +0100 Subject: [PATCH] tests: skip test_exec_ambientcapabilities on Travis CI under ASan Let's not bother contributors with spurious failures nobody can't seem to reproduce. There is an issue about that where we're trying to figure out what's going on: https://github.com/systemd/systemd/issues/10696. --- src/test/test-execute.c | 7 +++++++ src/test/test-helper.c | 6 ++++++ src/test/test-helper.h | 2 ++ travis-ci/managers/fedora.sh | 1 + 4 files changed, 16 insertions(+) diff --git a/src/test/test-execute.c b/src/test/test-execute.c index 0f66df66c7..9d35e4e00a 100644 --- a/src/test/test-execute.c +++ b/src/test/test-execute.c @@ -616,6 +616,13 @@ static void test_exec_ambientcapabilities(Manager *m) { return; } +#ifdef __SANITIZE_ADDRESS__ + if (is_run_on_travis_ci()) { + log_notice("Skipping %s, see https://github.com/systemd/systemd/issues/10696", __func__); + return; + } +#endif + test(m, "exec-ambientcapabilities.service", 0, CLD_EXITED); test(m, "exec-ambientcapabilities-merge.service", 0, CLD_EXITED); diff --git a/src/test/test-helper.c b/src/test/test-helper.c index 9cf9972380..5b79d12f07 100644 --- a/src/test/test-helper.c +++ b/src/test/test-helper.c @@ -4,6 +4,7 @@ #include "random-util.h" #include "alloc-util.h" #include "cgroup-util.h" +#include "string-util.h" int enter_cgroup_subroot(void) { _cleanup_free_ char *cgroup_root = NULL, *cgroup_subroot = NULL; @@ -27,3 +28,8 @@ int enter_cgroup_subroot(void) { return cg_attach_everywhere(supported, cgroup_subroot, 0, NULL, NULL); } + +/* https://docs.travis-ci.com/user/environment-variables#default-environment-variables */ +bool is_run_on_travis_ci(void) { + return streq_ptr(getenv("TRAVIS"), "true"); +} diff --git a/src/test/test-helper.h b/src/test/test-helper.h index 3e8ccd9049..77af40d555 100644 --- a/src/test/test-helper.h +++ b/src/test/test-helper.h @@ -27,3 +27,5 @@ ) int enter_cgroup_subroot(void); + +bool is_run_on_travis_ci(void); diff --git a/travis-ci/managers/fedora.sh b/travis-ci/managers/fedora.sh index 09122f7232..c84d10bbe6 100755 --- a/travis-ci/managers/fedora.sh +++ b/travis-ci/managers/fedora.sh @@ -60,6 +60,7 @@ for phase in "${PHASES[@]}"; do travis_wait docker exec --interactive=false \ -e UBSAN_OPTIONS=print_stacktrace=1:print_summary=1:halt_on_error=1 \ -e ASAN_OPTIONS=strict_string_checks=1:detect_stack_use_after_return=1:check_initialization_order=1:strict_init_order=1 \ + -e "TRAVIS=$TRAVIS" \ -t $CONT_NAME \ meson test --timeout-multiplier=3 -C ./build/ --print-errorlogs ;;