]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
confext: test image wide systemd support for confext 28097/head
authorMaanya Goenka <maanyagoenka@microsoft.com>
Thu, 13 Jul 2023 22:10:01 +0000 (22:10 +0000)
committerMaanya Goenka <maanyagoenka@microsoft.com>
Fri, 14 Jul 2023 16:59:42 +0000 (16:59 +0000)
test/TEST-50-DISSECT/test.sh
test/units/testsuite-29.sh
test/units/testsuite-50.sh

index 6e5179c8422b4b3a2bb36a5cd4e7c9eff7dfb4e2..f1abce8887328284197bac2e9f8aaf532468e6c7 100755 (executable)
@@ -24,6 +24,7 @@ test_append_files() {
     if command -v openssl >/dev/null 2>&1; then
         inst_binary openssl
     fi
+    inst_binary mksquashfs
     inst_binary unsquashfs
     install_verity_minimal
 }
index cc4ddd7c990ec53988e1b57cb2b8c149ac6558bb..18ec41727d002904d441e483cea51fad565ac5c9 100755 (executable)
@@ -31,8 +31,8 @@ fi
 
 systemd-dissect --no-pager /usr/share/minimal_0.raw | grep -q '✓ portable service'
 systemd-dissect --no-pager /usr/share/minimal_1.raw | grep -q '✓ portable service'
-systemd-dissect --no-pager /usr/share/app0.raw | grep -q '✓ extension for portable service'
-systemd-dissect --no-pager /usr/share/app1.raw | grep -q '✓ extension for portable service'
+systemd-dissect --no-pager /usr/share/app0.raw | grep -q '✓ sysext extension for portable service'
+systemd-dissect --no-pager /usr/share/app1.raw | grep -q '✓ sysext extension for portable service'
 
 export SYSTEMD_LOG_LEVEL=debug
 mkdir -p /run/systemd/system/systemd-portabled.service.d/
index 5a48dd5cbd0cad5d333929c7220151061dfc2e6c..cf31ec72630a310d987759f758d6016c0d810f70 100755 (executable)
@@ -551,4 +551,36 @@ echo abc > abc
 systemd-dissect --copy-to /tmp/img abc /abc
 test -f /tmp/img/abc
 
+# Test for dissect tool support with systemd-sysext
+mkdir -p /run/extensions/ testkit/usr/lib/extension-release.d/
+echo "ID=_any" >testkit/usr/lib/extension-release.d/extension-release.testkit
+echo "ARCHITECTURE=_any" >>testkit/usr/lib/extension-release.d/extension-release.testkit
+echo "MARKER_SYSEXT_123" >testkit/usr/lib/testfile
+mksquashfs testkit/ testkit.raw
+cp testkit.raw /run/extensions/
+unsquashfs -l /run/extensions/testkit.raw
+systemd-dissect --no-pager /run/extensions/testkit.raw | grep -q '✓ sysext extension for portable service'
+systemd-dissect --no-pager /run/extensions/testkit.raw | grep -q '✓ sysext extension for system'
+systemd-sysext merge
+systemd-sysext status
+grep -q -F "MARKER_SYSEXT_123" /usr/lib/testfile
+systemd-sysext unmerge
+rm -rf /run/extensions/ testkit/
+
+# Test for dissect tool support with systemd-confext
+mkdir -p /run/confexts/ testjob/etc/extension-release.d/
+echo "ID=_any" >testjob/etc/extension-release.d/extension-release.testjob
+echo "ARCHITECTURE=_any" >>testjob/etc/extension-release.d/extension-release.testjob
+echo "MARKER_CONFEXT_123" >testjob/etc/testfile
+mksquashfs testjob/ testjob.raw
+cp testjob.raw /run/confexts/
+unsquashfs -l /run/confexts/testjob.raw
+systemd-dissect --no-pager /run/confexts/testjob.raw | grep -q '✓ confext extension for system'
+systemd-dissect --no-pager /run/confexts/testjob.raw | grep -q '✓ confext extension for portable service'
+systemd-confext merge
+systemd-confext status
+grep -q -F "MARKER_CONFEXT_123" /etc/testfile
+systemd-confext unmerge
+rm -rf /run/confexts/ testjob/
+
 touch /testok