diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2020-03-25 13:46:44 +0100 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2020-03-31 12:31:10 +0200 |
commit | 3597bf75502a607c4cdf10f34f3082b1606d6abd (patch) | |
tree | a09a898492cc544fbce31c47de83cb5902279673 | |
parent | a455e75a309814f2b9947a70356dbbb3aad5a982 (diff) | |
download | systemd-3597bf75502a607c4cdf10f34f3082b1606d6abd.tar.gz |
run-integration-tests: add support for blacklisting
This was done downstream in debian and ubuntu [1]. I want to change the
downstream file to use run-integration-tests so we can change the way tests
work more easily. Let's start moving downstream functionality upstream.
$ sudo BLACKLIST_MARKERS='blacklist-ubuntu-ci-arm64 blacklist-ubuntu-ci' \
BUILD_DIR=build test/run-integration-tests.sh
[1] https://salsa.debian.org/systemd-team/systemd/-/blob/debian/master/debian/tests/upstream
-rwxr-xr-x | test/run-integration-tests.sh | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/test/run-integration-tests.sh b/test/run-integration-tests.sh index bcbbb8b7ed..5c6c21ea09 100755 --- a/test/run-integration-tests.sh +++ b/test/run-integration-tests.sh @@ -25,9 +25,21 @@ if [ $do_clean = 1 ]; then done fi +pass_blacklist() { + for marker in $BLACKLIST_MARKERS; do + if [ -f "$1/$marker" ]; then + echo "========== BLACKLISTED: $1 ($marker) ==========" + return 1 + fi + done + return 0 +} + for TEST in TEST-??-* ; do COUNT=$(($COUNT+1)) + pass_blacklist $TEST || continue + echo -e "\n--x-- Running $TEST --x--" set +e ( set -x ; make -C "$TEST" "BUILD_DIR=$BUILD_DIR" $args ) @@ -41,7 +53,7 @@ for TEST in TEST-??-* ; do done if [ $FAILURES -eq 0 -a $do_clean = 1 ]; then - for TEST in TEST-??-* ; do + for TEST in ${!results[@]}; do ( set -x ; make -C "$TEST" "BUILD_DIR=$BUILD_DIR" clean-again ) done fi |