From 8d5fee5d41ee41d583e300b8b81783b999f8ebc3 Mon Sep 17 00:00:00 2001 From: Timothy Day Date: Thu, 9 Mar 2023 04:55:26 +0000 Subject: [PATCH] LU-16627 tests: add auster long options Add long options to auster. Update the file header to have the SPDX license and use the standard format. Address a couple of small shellcheck warnings. Test-Parameters: trivial Signed-off-by: Timothy Day Change-Id: I3f1089ce6e054cd40f0afb229f9a0f0935e96d2e Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/50237 Tested-by: jenkins Tested-by: Maloo Reviewed-by: Charlie Olmstead Reviewed-by: Andreas Dilger Reviewed-by: Arshad Hussain Reviewed-by: Oleg Drokin --- lustre/tests/auster | 80 ++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 57 insertions(+), 23 deletions(-) diff --git a/lustre/tests/auster b/lustre/tests/auster index 423eec2..d885bbe 100755 --- a/lustre/tests/auster +++ b/lustre/tests/auster @@ -1,12 +1,20 @@ #!/bin/bash +# SPDX-License-Identifier: GPL-2.0 + +# +# This file is part of Lustre, http://www.lustre.org/ +# +# lustre/tests/auster # +# Drive lustre tests +# + # -# auster - drive lustre tests # TODO # 1. --time-limt add per test time limit, kill test if it runs to long # 2. Read list of tests to run from a file. same syntax as cli, but one test per line # 3. Run test on remote node -# 4. Use long opts for auster options +# set -e @@ -17,25 +25,25 @@ usage() { less -F <.sh) - -g GROUP Test group file (Overrides tests listed on command line) - -S TESTSUITE First test suite to run allows for restarts - -H Honor the EXCEPT and ALWAYS_EXCEPT list when --only is used - -i N Repeat tests N times (default 1). A new directory - will be created under LOGDIR for each iteration. - -k Don't stop when subtests fail - -R Remount lustre between tests - -r Reformat (during initial configuration if needed) - -s SLOW=yes - -v Verbose mode - -l Send logs to the Maloo database after run - (can be done later by running maloo_upload.sh) - -L Script language of test suite. Default: bash - -N No setup. Do not setup Lustre prior to executing test suite. - -h This help. + -c, --config CONFIG Test environment config file + -d, --log-dir LOGDIR Top level directory for logs + -D, --full-log-dir FULLLOGDIR Full directory for logs + -f, --cfg-name STR Config name (cfg/.sh) + -g, --group GROUP Test group file (Overrides tests listed on command line) + -S, --suite TESTSUITE First test suite to run allows for restarts + -H, --honor Honor the EXCEPT and ALWAYS_EXCEPT list when --only is used + -i, --repeat N Repeat tests N times (default 1). A new directory + will be created under LOGDIR for each iteration. + -k --no-stop Don't stop when subtests fail + -R, --remount Remount lustre between tests + -r, --reformat Reformat (during initial configuration if needed) + -s --slow SLOW=yes + -v, --verbose Verbose mode + -l, --send-logs Send logs to the Maloo database after run + (can be done later by running maloo_upload.sh) + -L, --lang Script language of test suite. Default: bash + -N, --no-setup No setup. Do not setup Lustre prior to executing test suite. + -h, --help This help. Suite options These are suite specific options that can be specified after each suite on @@ -72,8 +80,34 @@ script_lang=bash test_logs_dir=/tmp/test_logs/$(date +%Y-%m-%d)/$(date +%H%M%S) export HONOR_EXCEPT= do_setup=true -export ${SLOW:=no} -export ${NAME:=local} +export "${SLOW:=no}" +export "${NAME:=local}" + +# Replace long option with corresponding short option +for arg in "$@"; do + shift + case "$arg" in + --config) set -- "$@" '-c';; + --log-dir) set -- "$@" '-d';; + --full-log-dir) set -- "$@" '-D';; + --group) set -- "$@" '-g';; + --suite) set -- "$@" '-S';; + --no-stop) set -- "$@" '-k';; + --verbose) set -- "$@" '-v';; + --honor) set -- "$@" '-H';; + --repeat) set -- "$@" '-i';; + --cfg-name) set -- "$@" '-f';; + --remount) set -- "$@" '-R';; + --reformat) set -- "$@" '-r';; + --slow) set -- "$@" '-s';; + --send-logs) set -- "$@" '-l';; + --lang) set -- "$@" '-L';; + --no-setup) set -- "$@" '-N';; + --help) set -- "$@" '-h';; + *) set -- "$@" "$arg";; + esac +done + while getopts "c:d:D:nkf:S:g:Hi:rRslL:Nhv" opt do case "$opt" in -- 1.8.3.1