From 5477673901655f5ae559b7b0a90c552a37063b51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=BD=D0=B0=D0=B1?= Date: Fri, 25 Feb 2022 20:58:07 +0100 Subject: [PATCH] Fix freebsd reporting on reruns MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Turns out, when your test-suite fails with Results Summary PASS 1358 FAIL 7 SKIP 47 Running Time: 04:00:02 Percent passed: 96.2% Log directory: /var/tmp/test_results/20220225T092538 mktemp: illegal option -- p usage: mktemp [-d] [-q] [-t prefix] [-u] template ... mktemp [-d] [-q] [-u] -t prefix mktemp: illegal option -- p usage: mktemp [-d] [-q] [-t prefix] [-u] template ... mktemp [-d] [-q] [-u] -t prefix /usr/local/share/zfs/zfs-tests.sh: cannot create : No such file or directory /usr/local/share/zfs/zfs-tests.sh: cannot create : No such file or directory /usr/local/share/zfs/zfs-tests.sh: cannot create : No such file or directory /usr/local/share/zfs/zfs-tests.sh: cannot create : No such file or directory /usr/local/share/zfs/zfs-tests.sh: cannot create : No such file or directory /usr/local/share/zfs/zfs-tests.sh: cannot create : No such file or directory /usr/local/share/zfs/zfs-tests.sh: cannot create : No such file or directory /usr/local/share/zfs/zfs-tests.sh: cannot create : No such file or directory that's a bad thing!! Fixes: 2320e6eb4302fbcf715f9e42e2fb8bb1af4ade56 ("Add zfs-test facility to automatically rerun failing tests") Signed-off-by: Ahelenia ZiemiaƄska --- scripts/zfs-tests.sh | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/scripts/zfs-tests.sh b/scripts/zfs-tests.sh index 421eb67d2dc2..2477d0f91799 100755 --- a/scripts/zfs-tests.sh +++ b/scripts/zfs-tests.sh @@ -688,14 +688,16 @@ export __ZFS_POOL_EXCLUDE export TESTFAIL_CALLBACKS export PATH=$STF_PATH -if [ "$UNAME" = "FreeBSD" ] ; then - mkdir -p "$FILEDIR" || true - RESULTS_FILE=$(mktemp -u "${FILEDIR}/zts-results.XXXXXX") - REPORT_FILE=$(mktemp -u "${FILEDIR}/zts-report.XXXXXX") -else - RESULTS_FILE=$(mktemp -u -t zts-results.XXXXXX -p "$FILEDIR") - REPORT_FILE=$(mktemp -u -t zts-report.XXXXXX -p "$FILEDIR") -fi +mktemp_file() { + if [ "$UNAME" = "FreeBSD" ]; then + mktemp -u "${FILEDIR}/$1.XXXXXX" + else + mktemp -ut "$1.XXXXXX" -p "$FILEDIR" + fi +} +mkdir -p "$FILEDIR" || : +RESULTS_FILE=$(mktemp_file zts-results) +REPORT_FILE=$(mktemp_file zts-report) # # Run all the tests as specified. @@ -725,8 +727,8 @@ RESULT=$? if [ "$RESULT" -eq "2" ] && [ -n "$RERUN" ]; then MAYBES="$($ZTS_REPORT --list-maybes)" - TEMP_RESULTS_FILE=$(mktemp -u -t zts-results-tmp.XXXXX -p "$FILEDIR") - TEST_LIST=$(mktemp -u -t test-list.XXXXX -p "$FILEDIR") + TEMP_RESULTS_FILE=$(mktemp_file zts-results-tmp) + TEST_LIST=$(mktemp_file test-list) grep "^Test:.*\[FAIL\]" "$RESULTS_FILE" >"$TEMP_RESULTS_FILE" for test_name in $MAYBES; do grep "$test_name " "$TEMP_RESULTS_FILE" >>"$TEST_LIST"