5b50b233ab
Podman gating tests failed: ... back_again.changed): 'dict object' has no attribute 'changed' Previous error (ignored) was a timeout in the reboot step. I have no idea how to fix this, so let's try putting the reboot and wait steps into a 'block' section and removing the '.changed'. Tested with 1minutetip. Seems to work, but the reboot was quick so it didn't trigger the same code. Signed-off-by: Ed Santiago <santiago@redhat.com>
60 lines
1.6 KiB
YAML
60 lines
1.6 KiB
YAML
---
|
|
# Check the CURRENT cgroup level; we get this from /proc/cmdline
|
|
- name: check current kernel options
|
|
shell: fgrep systemd.unified_cgroup_hierarchy=0 /proc/cmdline
|
|
register: result
|
|
ignore_errors: true
|
|
|
|
- name: determine current cgroups | assume v2
|
|
set_fact: current_cgroups=2
|
|
|
|
- name: determine current cgroups | looks like v1
|
|
set_fact: current_cgroups=1
|
|
when: result is succeeded
|
|
|
|
- debug:
|
|
msg: "want: v{{ want_cgroups }} actual: v{{ current_cgroups }}"
|
|
|
|
# Update grubenv file to reflect the desired cgroup level
|
|
- name: remove cgroup option from kernel flags
|
|
shell:
|
|
cmd: sed -i -e "s/^\(kernelopts=.*\)systemd\.unified_cgroup_hierarchy=.\(.*\)/\1\2/" /boot/grub2/grubenv
|
|
warn: false
|
|
|
|
- name: add it with the desired value
|
|
shell:
|
|
cmd: sed -i -e "s/^\(kernelopts=.*\)/\1 systemd.unified_cgroup_hierarchy=0/" /boot/grub2/grubenv
|
|
warn: false
|
|
when: want_cgroups == 1
|
|
|
|
# If want != have, reboot
|
|
- name: reboot and wait
|
|
block:
|
|
- name: reboot
|
|
reboot:
|
|
reboot_timeout: 900
|
|
ignore_errors: yes
|
|
- name: wait and reconnect
|
|
wait_for_connection:
|
|
timeout: 900
|
|
when: want_cgroups|int != current_cgroups|int
|
|
|
|
- set_fact:
|
|
expected_fstype:
|
|
- none
|
|
- tmpfs
|
|
- cgroup2fs
|
|
|
|
- name: confirm cgroups setting
|
|
shell: stat -f -c "%T" /sys/fs/cgroup
|
|
register: fstype
|
|
|
|
- debug:
|
|
msg: "stat(/sys/fs/cgroup) = {{ fstype.stdout }}"
|
|
|
|
- name: system cgroups is the expected type
|
|
assert:
|
|
that:
|
|
- fstype.stdout == expected_fstype[want_cgroups|int]
|
|
fail_msg: "stat(/sys/fs/cgroup) = {{ fstype.stdout }} (expected {{ expected_fstype[want_cgroups|int] }})"
|