System test additions
- run --userns=keep-id: confirm that $HOME gets set (#8013)
- inspect: confirm that JSON output is a sane number of
lines (10 or more), not an unreadable one-liner (#8011
and #8021). Do so with image, pod, network, volume
because the code paths might be different.
- cgroups: confirm that 'run' preserves cgroup manager (#7970)
- sdnotify: reenable tests, and hope CI doesn't hang. This
test was disabled on August 18 because CI jobs were hanging
and timing out. My suspicion was that it was #7316, which
in turn seems to have hinged on conmon #182. The latter
was merged on Sep 16, so let's cross our fingers and see
what happens.
Also: remove inaccurate warning from a networking test.
And, wow, fix is_cgroupsv2(), it has never actually worked.
Signed-off-by: Ed Santiago <santiago@redhat.com>
2020-10-14 12:24:17 +00:00
|
|
|
#!/usr/bin/env bats -*- bats -*-
|
|
|
|
#
|
|
|
|
# cgroups-related tests
|
|
|
|
#
|
|
|
|
|
|
|
|
load helpers
|
|
|
|
|
|
|
|
@test "podman run, preserves initial --cgroup-manager" {
|
|
|
|
skip_if_remote "podman-remote does not support --cgroup-manager"
|
|
|
|
|
2021-09-30 11:59:46 +00:00
|
|
|
skip_if_rootless_cgroupsv1
|
System test additions
- run --userns=keep-id: confirm that $HOME gets set (#8013)
- inspect: confirm that JSON output is a sane number of
lines (10 or more), not an unreadable one-liner (#8011
and #8021). Do so with image, pod, network, volume
because the code paths might be different.
- cgroups: confirm that 'run' preserves cgroup manager (#7970)
- sdnotify: reenable tests, and hope CI doesn't hang. This
test was disabled on August 18 because CI jobs were hanging
and timing out. My suspicion was that it was #7316, which
in turn seems to have hinged on conmon #182. The latter
was merged on Sep 16, so let's cross our fingers and see
what happens.
Also: remove inaccurate warning from a networking test.
And, wow, fix is_cgroupsv2(), it has never actually worked.
Signed-off-by: Ed Santiago <santiago@redhat.com>
2020-10-14 12:24:17 +00:00
|
|
|
|
|
|
|
# Find out our default cgroup manager, and from that, get the non-default
|
|
|
|
run_podman info --format '{{.Host.CgroupManager}}'
|
|
|
|
case "$output" in
|
|
|
|
systemd) other="cgroupfs" ;;
|
|
|
|
cgroupfs) other="systemd" ;;
|
|
|
|
*) die "Unknown CgroupManager '$output'" ;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
run_podman --cgroup-manager=$other run --name myc $IMAGE true
|
|
|
|
run_podman container inspect --format '{{.HostConfig.CgroupManager}}' myc
|
|
|
|
is "$output" "$other" "podman preserved .HostConfig.CgroupManager"
|
|
|
|
|
2021-04-12 14:52:42 +00:00
|
|
|
if is_rootless && test $other = cgroupfs ; then
|
|
|
|
run_podman container inspect --format '{{.HostConfig.CgroupParent}}' myc
|
|
|
|
is "$output" "" "podman didn't set .HostConfig.CgroupParent for cgroupfs and rootless"
|
|
|
|
fi
|
|
|
|
|
System test additions
- run --userns=keep-id: confirm that $HOME gets set (#8013)
- inspect: confirm that JSON output is a sane number of
lines (10 or more), not an unreadable one-liner (#8011
and #8021). Do so with image, pod, network, volume
because the code paths might be different.
- cgroups: confirm that 'run' preserves cgroup manager (#7970)
- sdnotify: reenable tests, and hope CI doesn't hang. This
test was disabled on August 18 because CI jobs were hanging
and timing out. My suspicion was that it was #7316, which
in turn seems to have hinged on conmon #182. The latter
was merged on Sep 16, so let's cross our fingers and see
what happens.
Also: remove inaccurate warning from a networking test.
And, wow, fix is_cgroupsv2(), it has never actually worked.
Signed-off-by: Ed Santiago <santiago@redhat.com>
2020-10-14 12:24:17 +00:00
|
|
|
# Restart the container, without --cgroup-manager option (ie use default)
|
|
|
|
# Prior to #7970, this would fail with an OCI runtime error
|
|
|
|
run_podman start myc
|
|
|
|
|
|
|
|
run_podman rm myc
|
|
|
|
}
|
|
|
|
|
|
|
|
# vim: filetype=sh
|