TEST-21-DFUZZER: skip test when no sanitizer is enabled

This commit is contained in:
Yu Watanabe
2025-05-09 17:45:26 +09:00
parent 5884fafcd7
commit 59dd650501
3 changed files with 13 additions and 8 deletions

View File

@@ -61,7 +61,6 @@ jobs:
cflags: "-O2 -D_FORTIFY_SOURCE=3"
relabel: no
vm: 1
skip: TEST-21-DFUZZER
- distro: debian
release: testing
sanitizers: ""
@@ -69,7 +68,6 @@ jobs:
cflags: "-Og"
relabel: no
vm: 0
skip: TEST-21-DFUZZER
- distro: ubuntu
release: noble
sanitizers: ""
@@ -77,7 +75,6 @@ jobs:
cflags: "-Og"
relabel: no
vm: 0
skip: TEST-21-DFUZZER
- distro: fedora
release: "42"
sanitizers: address,undefined
@@ -92,7 +89,6 @@ jobs:
cflags: "-Og"
relabel: yes
vm: 0
skip: TEST-21-DFUZZER
- distro: opensuse
release: tumbleweed
sanitizers: ""
@@ -100,7 +96,6 @@ jobs:
cflags: "-Og"
relabel: no
vm: 0
skip: TEST-21-DFUZZER
- distro: centos
release: "9"
sanitizers: ""
@@ -108,7 +103,6 @@ jobs:
cflags: "-Og"
relabel: yes
vm: 0
skip: TEST-21-DFUZZER
- distro: centos
release: "10"
sanitizers: ""
@@ -116,7 +110,6 @@ jobs:
cflags: "-Og"
relabel: yes
vm: 0
skip: TEST-21-DFUZZER
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
@@ -228,7 +221,6 @@ jobs:
sudo --preserve-env mkosi sandbox -- \
env \
TEST_PREFER_QEMU=${{ matrix.vm }} \
TEST_SKIP=${{ matrix.skip }} \
meson test \
-C build \
--no-rebuild \

View File

@@ -490,6 +490,14 @@ def main() -> None:
"""
)
if os.getenv('TEST_RUN_DFUZZER'):
dropin += textwrap.dedent(
f"""
[Service]
Environment=TEST_RUN_DFUZZER={os.environ['TEST_RUN_DFUZZER']}
"""
)
if os.getenv('TEST_JOURNAL_USE_TMP', '0') == '1':
if statfs(Path('/tmp')) != 'tmpfs' and statfs(Path('/dev/shm')) == 'tmpfs':
tmp = Path('/dev/shm')

View File

@@ -9,6 +9,11 @@ if ! command -v dfuzzer &>/dev/null; then
exit 77
fi
if [[ ! -v ASAN_OPTIONS && ! -v UBSAN_OPTIONS && "${TEST_RUN_DFUZZER:-0}" == "0" ]]; then
echo "no sanitizer is enabled, skipping. (Hint: set TEST_RUN_DFUZZER=1 to run test forcibly)."
exit 77
fi
# Save the end.service state before we start fuzzing, as it might get changed
# on the fly by one of the fuzzers
systemctl list-jobs | grep -F 'end.service' && SHUTDOWN_AT_EXIT=1 || SHUTDOWN_AT_EXIT=0