summaryrefslogtreecommitdiff
path: root/test/system/420-cgroups.bats
diff options
context:
space:
mode:
authorEd Santiago <santiago@redhat.com>2020-10-14 06:24:17 -0600
committerEd Santiago <santiago@redhat.com>2020-10-14 15:32:02 -0600
commit1646da834c06d55e7bf56b272f2666659117e6fa (patch)
tree85044a2360ddbb7a7845de11ec1016bf6996baab /test/system/420-cgroups.bats
parent1814bac92e98bf24c8f757dcd42fc0ae9fb9f9b0 (diff)
downloadpodman-1646da834c06d55e7bf56b272f2666659117e6fa.tar.gz
podman-1646da834c06d55e7bf56b272f2666659117e6fa.tar.bz2
podman-1646da834c06d55e7bf56b272f2666659117e6fa.zip
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>
Diffstat (limited to 'test/system/420-cgroups.bats')
-rw-r--r--test/system/420-cgroups.bats34
1 files changed, 34 insertions, 0 deletions
diff --git a/test/system/420-cgroups.bats b/test/system/420-cgroups.bats
new file mode 100644
index 000000000..615e43e6c
--- /dev/null
+++ b/test/system/420-cgroups.bats
@@ -0,0 +1,34 @@
+#!/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"
+
+ if is_rootless && is_cgroupsv1; then
+ skip "not supported as rootless under cgroups v1"
+ fi
+
+ # 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"
+
+ # 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