tests/basic: Skip --no-xattrs if we have selinux
authorColin Walters <walters@verbum.org>
Thu, 26 Aug 2021 16:47:00 +0000 (12:47 -0400)
committerLuca BRUNO <luca.bruno@coreos.com>
Mon, 6 Sep 2021 07:41:01 +0000 (07:41 +0000)
It cannot work to use `--no-xattrs` when SELinux is enabled
because we get a `security.selinux` attribute on created files
regardless.  So just skip this test if true.

Also add some `ostree fsck`s in here which helped me debug
this.

tests/basic-test.sh

index 935544d91ec808a9faec5761b7bd1fb93f85e559..b694f3703d249fdc3595538ddd2dbc3dcacf5ce7 100644 (file)
@@ -455,11 +455,18 @@ $OSTREE commit ${COMMIT_ARGS} --skip-if-unchanged -b trees/test2 -s 'should not
 $OSTREE ls -R -C test2
 new_rev=$($OSTREE rev-parse test2)
 assert_streq "${old_rev}" "${new_rev}"
+$OSTREE fsck
 echo "ok commit --skip-if-unchanged"
 
 cd ${test_tmpdir}/checkout-test2-4
+# Unfortunately later tests depend on this right now, so commit anyways
 $OSTREE commit ${COMMIT_ARGS} -b test2 -s "no xattrs" --no-xattrs
-echo "ok commit with no xattrs"
+if have_selinux_relabel; then
+    echo "ok # SKIP we get an injected security.selinux xattr regardless, so we can't do this"
+else
+    $OSTREE fsck
+    echo "ok commit with no xattrs"
+fi
 
 mkdir tree-A tree-B
 touch tree-A/file-a tree-B/file-b