From ed231f1ad9c09e98fd587168ae3ab206ac0acb4d Mon Sep 17 00:00:00 2001 From: Frantisek Sumsal Date: Sat, 10 Feb 2024 16:24:10 +0900 Subject: [PATCH] test: add test case for issue user journal corruption For issue #24150 and #31222. --- test/TEST-04-JOURNAL/test.sh | 4 ++++ test/test-functions | 2 +- test/units/testsuite-04.user-corrupt.sh | 31 +++++++++++++++++++++++++ 3 files changed, 36 insertions(+), 1 deletion(-) create mode 100755 test/units/testsuite-04.user-corrupt.sh diff --git a/test/TEST-04-JOURNAL/test.sh b/test/TEST-04-JOURNAL/test.sh index 42574ce8ea7cf..db7b4bc6a8ab4 100755 --- a/test/TEST-04-JOURNAL/test.sh +++ b/test/TEST-04-JOURNAL/test.sh @@ -27,6 +27,10 @@ test_append_files() { mkdir -p "$dropin_dir" printf '[Service]\nStandardOutput=journal+console\nStandardError=journal+console' >"$dropin_dir/99-stdout.conf" fi + + image_install sudo + inst /etc/sudoers + inst_recursive /usr/libexec/sudo/ } do_test "$@" diff --git a/test/test-functions b/test/test-functions index 80fdcd26b9485..cdae1e97b0a73 100644 --- a/test/test-functions +++ b/test/test-functions @@ -2099,7 +2099,7 @@ install_testuser() { # create unprivileged user for user manager tests mkdir -p "${initdir:?}/etc/sysusers.d" cat >"$initdir/etc/sysusers.d/testuser.conf" </etc/sudoers.d/testuser + +REPRO_SCRIPT="$(mktemp)" + +cat >"$REPRO_SCRIPT" <<\EOF +#!/bin/bash +set -eux +set -o pipefail + +journalctl --rotate --vacuum-files=1 +# Nuke all archived journals, so we start with a clean slate +rm -f /var/log/journal/$(