DTrace test: Add a new keyword SKIPCI to gentest.sh

This is for marking a test case is flakey and should not be executed in
the CI environment.

Reviewed by:	markj
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D34635
This commit is contained in:
Li-Wen Hsu 2022-03-24 11:30:27 +08:00
parent 9b261d2e0a
commit e62aee66b0
No known key found for this signature in database
GPG key ID: 82B261B14D3BC7AF
2 changed files with 8 additions and 4 deletions

View file

@ -17,9 +17,11 @@
# 1) and 2).
#
# The SKIP variable contains tests that should not be executed at all. The
# EXFAIL variable contains tests that are expected to fail when run. Please
# avoid adding tests to SKIP unless it really is necessary; with EXFAIL, tests
# that begin passing as the result of a change are visible in the test summary.
# EXFAIL variable contains tests that are expected to fail when run. The
# SKIPCI variable contains tests that are flakey and should not be executed in
# the CI environment. Please avoid adding tests to SKIP unless it really is
# necessary; with EXFAIL, tests that begin passing as the result of a change
# are visible in the test summary.
exclude()
{

View file

@ -83,18 +83,20 @@ ARCH=$(dirname ${CATEGORY})
. $EXCLUDES
EXFAILS=$(echo -e "$EXFAIL" | grep "^${CATEGORY}/" | xargs basename -a)
SKIPS=$(echo -e "$SKIP" | grep "^${CATEGORY}/" | xargs basename -a)
SKIPCIS=$(echo -e "$SKIPCI" | grep "^${CATEGORY}/" | xargs basename -a)
FILELIST=$(mktemp)
trap 'rm -f $FILELIST' EXIT
echo "$@" | tr ' ' '\n' | xargs basename -a | sort > ${FILELIST}
TFILES=$(printf '%s\n%s' "$EXFAILS" "$SKIPS" | sort | comm -13 /dev/stdin $FILELIST)
TFILES=$(printf '%s\n%s' "$EXFAILS" "$SKIPS" "$SKIPCIS" | sort | comm -13 /dev/stdin $FILELIST)
#
# Generate test cases.
#
gentestcases SKIPS "atf_skip \"test may hang or cause system instability\""
gentestcases EXFAILS "atf_expect_fail \"test is known to fail\""
gentestcases SKIPCIS "if [ \"\$(atf_config_get ci false)\" = \"true\" ]; then atf_skip \"see cddl/usr.sbin/dtrace/tests/tools/exclude.sh\"; fi"
gentestcases TFILES
#