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 0f66df66c7a..9d35e4e00a5 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 9cf99723806..5b79d12f078 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 3e8ccd90495..77af40d5559 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 09122f72323..c84d10bbe6e 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 ;; -- 2.47.3