From 87ccb400a28dcdcaa07f6c953b32816edb08d875 Mon Sep 17 00:00:00 2001 From: Alex Kiernan Date: Sun, 29 Dec 2019 13:25:24 +0000 Subject: [PATCH] tests: Skip /var test if running with systemd and libmount If running with systemd and libmount then /var mounting is deferred for systemd. Skip the relevant tests in this case as it will always fail. Signed-off-by: Alex Kiernan --- tests/libtest.sh | 12 ++++++++++++ tests/test-switchroot.sh | 8 ++++++-- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/tests/libtest.sh b/tests/libtest.sh index 3f5fd931..cbdf331c 100755 --- a/tests/libtest.sh +++ b/tests/libtest.sh @@ -559,6 +559,18 @@ skip_without_user_xattrs () { fi } +_have_systemd_and_libmount='' +have_systemd_and_libmount() { + if test "${_have_systemd_and_libmount}" = ''; then + if [ $(ostree --version | grep -c -e '- systemd' -e '- libmount') -eq 2 ]; then + _have_systemd_and_libmount=yes + else + _have_systemd_and_libmount=no + fi + fi + test ${_have_systemd_and_libmount} = yes +} + # Skip unless SELinux is disabled, or we can relabel. # Default Docker has security.selinux xattrs, but returns # EOPNOTSUPP when trying to set them, even to the existing value. diff --git a/tests/test-switchroot.sh b/tests/test-switchroot.sh index b05b11a4..e66c68de 100755 --- a/tests/test-switchroot.sh +++ b/tests/test-switchroot.sh @@ -82,7 +82,9 @@ test_that_prepare_root_sets_sysroot_up_correctly_with_initrd() { grep -qx "/this_is_bootfs" files grep -qx "/sysroot/this_is_ostree_root" files grep -qx "/sysroot/sysroot/this_is_real_root" files - grep -qx "/sysroot/var/this_is_ostree_var" files + if ! have_systemd_and_libmount; then + grep -qx "/sysroot/var/this_is_ostree_var" files + fi grep -qx "/sysroot/usr/this_is_ostree_usr" files grep -qx "/sysroot/usr is not writable" files @@ -101,7 +103,9 @@ test_that_prepare_root_sets_root_up_correctly_with_no_initrd() { grep -qx "/this_is_ostree_root" files grep -qx "/sysroot/this_is_bootfs" files grep -qx "/sysroot/this_is_real_root" files - grep -qx "/var/this_is_ostree_var" files + if ! have_systemd_and_libmount; then + grep -qx "/var/this_is_ostree_var" files + fi grep -qx "/usr/this_is_ostree_usr" files grep -qx "/usr is not writable" files