You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As an OpenShell maintainer, I want the rootless Podman E2E job to fail loudly if the pasta/Podman SIGTERM AppArmor denial ever reoccurs, so that a future regression of #2844 is caught by CI instead of silently reintroducing flaky tests.
Problem Statement
PR #2900 fixed #2844 by adding a signal (receive) peer=podman, rule to the pasta AppArmor profile on ubuntu-26.04 E2E runners, and verifies the fix by checking that the rule text was inserted into the profile file and that apparmor_parser reloaded it successfully. It does not verify at runtime that no AppArmor denial actually occurs during the E2E run.
The workflow's existing "Print AppArmor denials" step (.github/workflows/e2e-test.yml) is diagnostic-only:
The || true means this step never fails the job, regardless of what it finds.
Impact / Why This Matters
If a future Ubuntu runner image update, passt package bump, or AppArmor abstraction restructuring changes runtime enforcement behavior without breaking the static text match PR #2900 checks for, the exact flakiness from #2844 (15s SIGKILL fallback on every rootless container stop, non-deterministic test failures depending on timeout timing) could silently reoccur with CI staying green. Nothing currently turns a matching profile="pasta" ... signal=term denial in dmesg into an actual job failure.
Current workaround: none — this is a latent gap, not an active failure. The only way to notice a regression today would be a human manually reading the "Print AppArmor denials" step output after test flakiness reappears — the same discovery path that produced #2844 in the first place.
Acceptance Criteria
The rootless Podman E2E job fails if dmesg contains a line matching profile="pasta" combined with signal=term after the test run
A deliberately-reverted pasta AppArmor rule causes the job to fail with a clear error message (manual validation)
Run the E2E (rust-podman-rootless, ubuntu-26.04) job
Observe: dmesg contains the denial, but the job's "Print AppArmor denials" step exits 0 regardless, and the job can still pass if no individual test happens to cross its timeout
User Story
As an OpenShell maintainer, I want the rootless Podman E2E job to fail loudly if the pasta/Podman SIGTERM AppArmor denial ever reoccurs, so that a future regression of #2844 is caught by CI instead of silently reintroducing flaky tests.
Problem Statement
PR #2900 fixed #2844 by adding a
signal (receive) peer=podman,rule to thepastaAppArmor profile on ubuntu-26.04 E2E runners, and verifies the fix by checking that the rule text was inserted into the profile file and thatapparmor_parserreloaded it successfully. It does not verify at runtime that no AppArmor denial actually occurs during the E2E run.The workflow's existing "Print AppArmor denials" step (
.github/workflows/e2e-test.yml) is diagnostic-only:The
|| truemeans this step never fails the job, regardless of what it finds.Impact / Why This Matters
If a future Ubuntu runner image update,
passtpackage bump, or AppArmor abstraction restructuring changes runtime enforcement behavior without breaking the static text match PR #2900 checks for, the exact flakiness from #2844 (15s SIGKILL fallback on every rootless container stop, non-deterministic test failures depending on timeout timing) could silently reoccur with CI staying green. Nothing currently turns a matchingprofile="pasta" ... signal=termdenial indmesginto an actual job failure.Current workaround: none — this is a latent gap, not an active failure. The only way to notice a regression today would be a human manually reading the "Print AppArmor denials" step output after test flakiness reappears — the same discovery path that produced #2844 in the first place.
Acceptance Criteria
dmesgcontains a line matchingprofile="pasta"combined withsignal=termafter the test runReproduction Steps
signal (receive) peer=podman,rule added in fix(ci): allow pasta to receive Podman stop signals #2900, or otherwise cause pasta to deny Podman's SIGTERM againE2E (rust-podman-rootless, ubuntu-26.04)jobdmesgcontains the denial, but the job's "Print AppArmor denials" step exits 0 regardless, and the job can still pass if no individual test happens to cross its timeoutEnvironment