From 67b33be5be12ea7500d54a78961acbe76126e8ed Mon Sep 17 00:00:00 2001 From: Frantisek Sumsal Date: Sat, 25 Mar 2023 12:02:15 +0100 Subject: [PATCH] test: don't expand the subshell expression prematurely We need to expand the subshell expression during the `bash -c` invocation, not before, to take the desired effect, as now it expands to: timeout 30 bash -c 'while [[ 0 -eq 0 ]]; do sleep 1; done' instead of the expected: timeout 30 bash -c 'while [[ $(coredumpctl list -q --no-legend 770 | wc -l) -eq 0 ]]; do sleep 1; done' Follow-up to aadbd81f7f. (cherry picked from commit 0b189ac84c432a085a1f10139260cec6b5032523) Related: RHEL-34061 --- test/units/testsuite-74.coredump.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/units/testsuite-74.coredump.sh b/test/units/testsuite-74.coredump.sh index 6a299ecbfb..3910abe0ec 100755 --- a/test/units/testsuite-74.coredump.sh +++ b/test/units/testsuite-74.coredump.sh @@ -59,7 +59,7 @@ printf '[Coredump]\nStorage=external' >/run/systemd/coredump.conf.d/99-external. "$MAKE_DUMP_SCRIPT" "$CORE_TEST_BIN" "SIGABRT" rm -fv /run/systemd/coredump.conf.d/99-external.conf # Wait a bit for the coredumps to get processed -timeout 30 bash -c "while [[ $(coredumpctl list -q --no-legend $CORE_TEST_BIN | wc -l) -lt 4 ]]; do sleep 1; done" +timeout 30 bash -c "while [[ \$(coredumpctl list -q --no-legend $CORE_TEST_BIN | wc -l) -lt 4 ]]; do sleep 1; done" coredumpctl SYSTEMD_LOG_LEVEL=debug coredumpctl @@ -116,7 +116,7 @@ printf '[Coredump]\nStorage=external' >/run/systemd/coredump.conf.d/99-external. "${UNPRIV_CMD[@]}" "$MAKE_DUMP_SCRIPT" "$CORE_TEST_UNPRIV_BIN" "SIGABRT" rm -fv /run/systemd/coredump.conf.d/99-external.conf # Wait a bit for the coredumps to get processed -timeout 30 bash -c "while [[ $(coredumpctl list -q --no-legend $CORE_TEST_UNPRIV_BIN | wc -l) -lt 4 ]]; do sleep 1; done" +timeout 30 bash -c "while [[ \$(coredumpctl list -q --no-legend $CORE_TEST_UNPRIV_BIN | wc -l) -lt 4 ]]; do sleep 1; done" # root should see coredumps from both binaries coredumpctl info "$CORE_TEST_UNPRIV_BIN" @@ -149,7 +149,7 @@ rm -f /tmp/core.{output,redirected} journalctl -b -n 1 --output=export --output-fields=MESSAGE,COREDUMP COREDUMP_EXE="/usr/bin/test-dump" | /usr/lib/systemd/systemd-coredump --backtrace $$ 0 0 6 1679509994 12345 mymachine # Wait a bit for the coredump to get processed -timeout 30 bash -c "while [[ $(coredumpctl list -q --no-legend $$ | wc -l) -eq 0 ]]; do sleep 1; done" +timeout 30 bash -c "while [[ \$(coredumpctl list -q --no-legend $$ | wc -l) -eq 0 ]]; do sleep 1; done" coredumpctl info "$$" coredumpctl info COREDUMP_HOSTNAME="mymachine"