Public bug reported: The dracut autopkgtest 40-systemd is currently failing on Ubuntu stonking because the upstream TEST-40-SYSTEMD helper calls systemd- analyze verify "$i" without disabling man-page checks.
I reproduced the failure in the upstream dracut test suite as well as in the Ubuntu autopkgtest environment. The first relevant error is: sysinit.target: Command 'man systemd.special(7)' failed with code 1 Warning: systemd-analyze verify sysinit.target failed After this, the test powers off the guest early and eventually fails because it never reaches the expected success marker: E: Message '^All OK' not found in QEMU log output 40-systemd FAIL non-zero exit status 1 This appears to be a false negative in the test rather than a real initrd boot failure. `40-systemd` is intended to validate the dracut/systemd initrd boot path, but the current invocation also makes the test depend on man-page availability inside the initrd test environment. I verified that changing the helper from: systemd-analyze verify "$i" to: systemd-analyze --man=no verify "$i" makes the test pass in the same environment. This issue reproduces with upstream dracut `main` and the upstream `111` tag, and it affects the Ubuntu `dracut 111-4` package autopkgtest in stonking. Upstream issue: https://github.com/dracut-ng/dracut/issues/2492 Upstream PR: https://github.com/dracut-ng/dracut/pull/2493 **Steps to Reproduce** On Ubuntu stonking, run the dracut autopkgtest: autopkgtest . --test-name 40-systemd -U -o /tmp/adt-40 -- null Or run the equivalent upstream test: make TESTS="40" clean check Expected Result The 40-systemd test should pass if the initrd/systemd boot path is valid. It should not fail solely because man systemd.special(7) is unavailable in the initrd test environment. Actual Result The test fails during the pre-pivot systemd-analyze verify step: sysinit.target: Command 'man systemd.special(7)' failed with code 1 Warning: systemd-analyze verify sysinit.target failed and then exits with: 40-systemd FAIL non-zero exit status 1 Proposed Fix Carry the upstream fix once accepted, or temporarily patch Ubuntu dracut to call: systemd-analyze --man=no verify "$i" in systemd-analyze.sh. This keeps the test focused on unit verification and the initrd boot path, without depending on man-page availability in the test environment. ** Affects: dracut (Ubuntu) Importance: Undecided Status: New ** Tags: sts ** Description changed: The dracut autopkgtest 40-systemd is currently failing on Ubuntu stonking because the upstream TEST-40-SYSTEMD helper calls systemd- analyze verify "$i" without disabling man-page checks. - I reproduced the failure in the upstream dracut test suite as well as in - the Ubuntu autopkgtest environment. The first relevant error is: - - ```text + I reproduced the failure in the upstream dracut test suite as well as in the Ubuntu autopkgtest environment. The first relevant error is: sysinit.target: Command 'man systemd.special(7)' failed with code 1 Warning: systemd-analyze verify sysinit.target failed - ``` - After this, the test powers off the guest early and eventually fails - because it never reaches the expected success marker: - - ```text + After this, the test powers off the guest early and eventually fails because it never reaches the expected success marker: E: Message '^All OK' not found in QEMU log output 40-systemd FAIL non-zero exit status 1 - ``` This appears to be a false negative in the test rather than a real initrd boot failure. `40-systemd` is intended to validate the dracut/systemd initrd boot path, but the current invocation also makes the test depend on man-page availability inside the initrd test environment. I verified that changing the helper from: - - ```bash systemd-analyze verify "$i" - ``` to: - - ```bash systemd-analyze --man=no verify "$i" - ``` makes the test pass in the same environment. This issue reproduces with upstream dracut `main` and the upstream `111` tag, and it affects the Ubuntu `dracut 111-4` package autopkgtest in stonking. - Upstream issue: - - ```text - https://github.com/dracut-ng/dracut/issues/2492 - ``` - - Upstream PR: - - ```text - https://github.com/dracut-ng/dracut/pull/2493 - ``` + Upstream issue: https://github.com/dracut-ng/dracut/issues/2492 + Upstream PR: https://github.com/dracut-ng/dracut/pull/2493 **Steps to Reproduce** - On Ubuntu stonking, run the dracut autopkgtest: - - ```bash autopkgtest . --test-name 40-systemd -U -o /tmp/adt-40 -- null - ``` Or run the equivalent upstream test: - - ```bash make TESTS="40" clean check - ``` **Expected Result** - - The 40-systemd test should pass if the initrd/systemd boot path is - valid. It should not fail solely because man systemd.special(7) is - unavailable in the initrd test environment. + The 40-systemd test should pass if the initrd/systemd boot path is valid. It should not fail solely because man systemd.special(7) is unavailable in the initrd test environment. **Actual Result** - The test fails during the pre-pivot systemd-analyze verify step: - - ```text sysinit.target: Command 'man systemd.special(7)' failed with code 1 Warning: systemd-analyze verify sysinit.target failed - ``` and then exits with: - ```text 40-systemd FAIL non-zero exit status 1 - ``` **Proposed Fix** - - Carry the upstream fix once accepted, or temporarily patch Ubuntu dracut - to call: - - ```bash + Carry the upstream fix once accepted, or temporarily patch Ubuntu dracut to call: systemd-analyze --man=no verify "$i" - ``` in systemd-analyze.sh. This keeps the test focused on unit verification and the initrd boot path, without depending on man-page availability in the test environment. ** Tags added: sts ** Description changed: The dracut autopkgtest 40-systemd is currently failing on Ubuntu stonking because the upstream TEST-40-SYSTEMD helper calls systemd- analyze verify "$i" without disabling man-page checks. I reproduced the failure in the upstream dracut test suite as well as in the Ubuntu autopkgtest environment. The first relevant error is: sysinit.target: Command 'man systemd.special(7)' failed with code 1 Warning: systemd-analyze verify sysinit.target failed After this, the test powers off the guest early and eventually fails because it never reaches the expected success marker: E: Message '^All OK' not found in QEMU log output 40-systemd FAIL non-zero exit status 1 This appears to be a false negative in the test rather than a real initrd boot failure. `40-systemd` is intended to validate the dracut/systemd initrd boot path, but the current invocation also makes the test depend on man-page availability inside the initrd test environment. I verified that changing the helper from: systemd-analyze verify "$i" to: systemd-analyze --man=no verify "$i" makes the test pass in the same environment. This issue reproduces with upstream dracut `main` and the upstream `111` tag, and it affects the Ubuntu `dracut 111-4` package autopkgtest in stonking. Upstream issue: https://github.com/dracut-ng/dracut/issues/2492 Upstream PR: https://github.com/dracut-ng/dracut/pull/2493 **Steps to Reproduce** On Ubuntu stonking, run the dracut autopkgtest: autopkgtest . --test-name 40-systemd -U -o /tmp/adt-40 -- null Or run the equivalent upstream test: make TESTS="40" clean check - **Expected Result** + Expected Result The 40-systemd test should pass if the initrd/systemd boot path is valid. It should not fail solely because man systemd.special(7) is unavailable in the initrd test environment. - **Actual Result** + Actual Result The test fails during the pre-pivot systemd-analyze verify step: sysinit.target: Command 'man systemd.special(7)' failed with code 1 Warning: systemd-analyze verify sysinit.target failed and then exits with: 40-systemd FAIL non-zero exit status 1 - **Proposed Fix** + Proposed Fix Carry the upstream fix once accepted, or temporarily patch Ubuntu dracut to call: systemd-analyze --man=no verify "$i" in systemd-analyze.sh. This keeps the test focused on unit verification and the initrd boot path, without depending on man-page availability in the test environment. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2160087 Title: dracut 40-systemd autopkgtest fails because systemd-analyze verify checks man page availability To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/dracut/+bug/2160087/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
