mirror of
https://github.com/linux-apfs/apfstests.git
synced 2026-05-01 15:01:44 -07:00
bfffaa2807
When we have a config file with multiple sections, we might want to exclude certain config sections from running. Rather than specifying all the section we want to run, add a "-S <section>" option to build up a list of sections to exclude. This is useful if a given section config is known to cause a fatal failure,but you still want to run all the other config sections. Also add support to the setup program that emits the currently configured setup for each section in the config file. Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Eryu Guan <eguan@redhat.com> Signed-off-by: Dave Chinner <david@fromorbit.com>
95 lines
2.4 KiB
Bash
Executable File
95 lines
2.4 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Copyright (c) 2003-2004 Silicon Graphics, Inc. All Rights Reserved.
|
|
#
|
|
# This program is free software; you can redistribute it and/or
|
|
# modify it under the terms of the GNU General Public License as
|
|
# published by the Free Software Foundation.
|
|
#
|
|
# This program is distributed in the hope that it would be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write the Free Software Foundation,
|
|
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
#
|
|
usage()
|
|
{
|
|
|
|
echo "Usage: $0 [options]"'
|
|
|
|
-s section run only specified section(s) from config file
|
|
-S section exclude the specified section from the config file
|
|
'
|
|
exit 0
|
|
}
|
|
|
|
while [ $# -gt 0 ]; do
|
|
case "$1" in
|
|
-\? | -h | --help) usage ;;
|
|
-s) RUN_SECTION="$RUN_SECTION $2"; shift ;;
|
|
-S) EXCLUDE_SECTION="$EXCLUDE_SECTION $2"; shift ;;
|
|
*) usage ;;
|
|
esac
|
|
shift
|
|
done
|
|
|
|
if ! . ./common/config
|
|
then
|
|
echo "check: failed to source common/config"
|
|
exit 1
|
|
fi
|
|
|
|
for section in $HOST_OPTIONS_SECTIONS; do
|
|
OLD_FSTYP=$FSTYP
|
|
OLD_MOUNT_OPTIONS=$MOUNT_OPTIONS
|
|
get_next_config $section
|
|
|
|
# Do we need to run only some sections ?
|
|
if [ ! -z "$RUN_SECTION" ]; then
|
|
skip=true
|
|
for s in $RUN_SECTION; do
|
|
if [ $section == $s ]; then
|
|
skip=false
|
|
break;
|
|
fi
|
|
done
|
|
if $skip; then
|
|
continue
|
|
fi
|
|
fi
|
|
|
|
# Did this section get excluded?
|
|
if [ ! -z "$EXCLUDE_SECTION" ]; then
|
|
skip=false
|
|
for s in $EXCLUDE_SECTION; do
|
|
if [ $section == $s ]; then
|
|
skip=true
|
|
break;
|
|
fi
|
|
done
|
|
if $skip; then
|
|
continue
|
|
fi
|
|
fi
|
|
|
|
[ "$USE_EXTERNAL" = yes ] || USE_EXTERNAL=no
|
|
[ "$USE_LBD_PATCH" = yes ] || USE_LBD_PATCH=no
|
|
[ "$LARGE_SCRATCH_DEV" = yes ] || LARGE_SCRATCH_DEV=no
|
|
[ "$USE_ATTR_SECURE" = yes ] || USE_ATTR_SECURE=no
|
|
[ -z "$FSTYP" ] && FSTYP="xfs"
|
|
|
|
cat <<EOF
|
|
SECTION -- $section
|
|
|
|
TEST: DIR=$TEST_DIR DEV=$TEST_DEV rt=[$TEST_RTDEV] log=[$TEST_LOGDEV]
|
|
TAPE: dev=[$TAPE_DEV] rmt=[$RMT_TAPE_DEV] rmtirix=[$RMT_TAPE_USER@$RMT_IRIXTAPE_DEV]
|
|
SCRATCH: MNT=$SCRATCH_MNT DEV=$SCRATCH_DEV rt=[$SCRATCH_RTDEV] log=[$SCRATCH_LOGDEV]
|
|
VARIABLES: external=$USE_EXTERNAL largeblk=$USE_LBD_PATCH fstyp=$FSTYP
|
|
large_scratch_dev=$LARGE_SCRATCH_DEV attrsecure=$USE_ATTR_SECURE
|
|
--------
|
|
EOF
|
|
done
|