]> git.proxmox.com Git - mirror_zfs-debian.git/blobdiff - scripts/zfs-tests.sh
Patch upstream init scripts to make them work for Debian+OpenRC setup.
[mirror_zfs-debian.git] / scripts / zfs-tests.sh
index 1d959ae330c6ff33e4046abc0f2329613a7b5026..147abee0ca23bf473f99eda8fd882d566c270eba 100755 (executable)
@@ -41,6 +41,8 @@ FILEDIR=${FILEDIR:-/var/tmp}
 DISKS=${DISKS:-""}
 SINGLETEST=()
 SINGLETESTUSER="root"
+TAGS="functional"
+ITERATIONS=1
 ZFS_DBGMSG="$STF_SUITE/callbacks/zfs_dbgmsg.ksh"
 ZFS_DMESG="$STF_SUITE/callbacks/zfs_dmesg.ksh"
 ZFS_MMP="$STF_SUITE/callbacks/zfs_mmp.ksh"
@@ -250,10 +252,13 @@ OPTIONS:
        -x          Remove all testpools, dm, lo, and files (unsafe)
        -k          Disable cleanup after test failure
        -f          Use files only, disables block device tests
+       -c          Only create and populate constrained path
+       -I NUM      Number of iterations
        -d DIR      Use DIR for files and loopback devices
        -s SIZE     Use vdevs of SIZE (default: 4G)
        -r RUNFILE  Run tests in RUNFILE (default: linux.run)
        -t PATH     Run single test at PATH relative to test suite
+       -T TAGS     Comma separated list of tags
        -u USER     Run single test as USER (default: root)
 
 EXAMPLES:
@@ -270,7 +275,7 @@ $0 -x
 EOF
 }
 
-while getopts 'hvqxkfd:s:r:?t:u:' OPTION; do
+while getopts 'hvqxkfcd:s:r:?t:T:u:I:' OPTION; do
        case $OPTION in
        h)
                usage
@@ -295,6 +300,12 @@ while getopts 'hvqxkfd:s:r:?t:u:' OPTION; do
        d)
                FILEDIR="$OPTARG"
                ;;
+       I)
+               ITERATIONS="$OPTARG"
+               if [ "$ITERATIONS" -le 0 ]; then
+                       fail "Iterations must be greater than 0."
+               fi
+               ;;
        s)
                FILESIZE="$OPTARG"
                ;;
@@ -307,6 +318,9 @@ while getopts 'hvqxkfd:s:r:?t:u:' OPTION; do
                fi
                SINGLETEST+=("$OPTARG")
                ;;
+       T)
+               TAGS="$OPTARG"
+               ;;
        u)
                SINGLETESTUSER="$OPTARG"
                ;;
@@ -496,6 +510,8 @@ msg "LOOPBACKS:       $LOOPBACKS"
 msg "DISKS:           $DISKS"
 msg "NUM_DISKS:       $NUM_DISKS"
 msg "FILESIZE:        $FILESIZE"
+msg "ITERATIONS:      $ITERATIONS"
+msg "TAGS:            $TAGS"
 msg "Keep pool(s):    $KEEP"
 msg "Missing util(s): $STF_MISSING_BIN"
 msg ""
@@ -509,8 +525,10 @@ export __ZFS_POOL_EXCLUDE
 export TESTFAIL_CALLBACKS
 export PATH=$STF_PATH
 
-msg "${TEST_RUNNER} ${QUIET} -c ${RUNFILE} -i ${STF_SUITE}"
-${TEST_RUNNER} ${QUIET} -c "${RUNFILE}" -i "${STF_SUITE}"
+msg "${TEST_RUNNER} ${QUIET} -c ${RUNFILE} -T ${TAGS} -i ${STF_SUITE}" \
+    "-I ${ITERATIONS}"
+${TEST_RUNNER} ${QUIET} -c "${RUNFILE}" -T "${TAGS}" -i "${STF_SUITE}" \
+    -I "${ITERATIONS}"
 RESULT=$?
 echo