Skip to content

Commit

Permalink
Skip / update some tests under runc
Browse files Browse the repository at this point in the history
Two fixes done in #14972 (the "oops test under runc again" PR
which was not backported into 4.2):

 - "survive service stop" - skip. Test is only applicable
   under crun.
 - "volume exec/noexec" - update the expected error message

One hail-mary fix for a test failure seen in RHEL87 gating:

 - "nonexistent labels" - slight tweak to expected error message

None of these fixes will actually be tested in CI, because v4.2
does not run any runc tests. We'll have to wait and see what
happens on the next RHEL build.

Signed-off-by: Ed Santiago <[email protected]>
  • Loading branch information
edsantiago committed Aug 16, 2022
1 parent edb3f70 commit eb2496a
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 5 deletions.
8 changes: 4 additions & 4 deletions test/system/160-volumes.bats
Original file line number Diff line number Diff line change
Expand Up @@ -149,16 +149,16 @@ EOF

# By default, volumes are mounted exec, but we have manually added the
# noexec option. This should fail.
# ARGH. Unfortunately, runc (used for cgroups v1) produces a different error
# ARGH. Unfortunately, runc (used for cgroups v1) has different exit status
local expect_rc=126
local expect_msg='.* OCI permission denied.*'
if [[ $(podman_runtime) = "runc" ]]; then
expect_rc=1
expect_msg='.* exec user process caused.*permission denied'
fi

run_podman ${expect_rc} run --rm --volume $myvolume:/vol:noexec,z $IMAGE /vol/myscript
is "$output" "$expect_msg" "run on volume, noexec"
# crun and runc emit different messages, and even runc is inconsistent
# with itself (output changed some time in 2022?). Deal with all.
assert "$output" =~ 'exec.* permission denied' "run on volume, noexec"

# With the default, it should pass
run_podman run --rm -v $myvolume:/vol:z $IMAGE /vol/myscript
Expand Down
4 changes: 4 additions & 0 deletions test/system/251-system-service.bats
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,10 @@ function teardown() {

@test "podman-system-service containers survive service stop" {
skip_if_remote "podman system service unavailable over remote"
local runtime=$(podman_runtime)
if [[ "$runtime" != "crun" ]]; then
skip "survival code only implemented in crun; you're using $runtime"
fi

port=$(random_free_port)
URL=tcp://127.0.0.1:$port
Expand Down
2 changes: 1 addition & 1 deletion test/system/410-selinux.bats
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ function check_label() {
# https://github.com/opencontainers/selinux/pull/148/commits/a5dc47f74c56922d58ead05d1fdcc5f7f52d5f4e
# from failed to set /proc/self/attr/keycreate on procfs
# to write /proc/self/attr/keycreate: invalid argument
runc) expect="OCI runtime error: .*: \(failed to set|write\) /proc/self/attr/keycreate" ;;
runc) expect="OCI runtime error: .*: \(failed to set\|write\) /proc/self/attr/keycreate.*" ;;
*) skip "Unknown runtime '$runtime'";;
esac

Expand Down

0 comments on commit eb2496a

Please sign in to comment.