From 1500fe38b299e0ebc9bf6e259396a3bff5aed42f Mon Sep 17 00:00:00 2001 From: Daan De Meyer Date: Wed, 6 Dec 2023 12:18:32 +0100 Subject: [PATCH] test: Add test case for --make-ddi=sysext Also make sure that the sysext is big enough to not fit in the minimum partition size so we know Minimize= is being used. --- test/units/testsuite-50.sh | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/test/units/testsuite-50.sh b/test/units/testsuite-50.sh index 169aa1b864c..28218ab6d74 100755 --- a/test/units/testsuite-50.sh +++ b/test/units/testsuite-50.sh @@ -677,11 +677,35 @@ if command -v mksquashfs >/dev/null 2>&1; then read -r X < /etc/waldo test "$X" = foobar50 - rm /run/verity.d/test-50-cert.crt /run/confexts/waldo.confext.raw /tmp/test-50-cert.crt /tmp/test-50-privkey.key + rm /run/confexts/waldo.confext.raw systemd-confext refresh - (! test -f /tmp/test-50-confext/etc/waldo ) + (! test -f /etc/waldo ) + + mkdir -p /tmp/test-50-sysext/usr/lib/extension-release.d/ + + # Make sure the sysext is big enough to not fit in the minimum partition size of repart so we know the + # Minimize= logic is working. + truncate --size=50M /tmp/test-50-sysext/usr/waldo + + ( grep -e '^\(ID\|VERSION_ID\)=' /etc/os-release ; echo IMAGE_ID=waldo ; echo IMAGE_VERSION=7 ) > /tmp/test-50-sysext/usr/lib/extension-release.d/extension-release.waldo + + mkdir -p /run/extensions + + SYSTEMD_REPART_OVERRIDE_FSTYPE=squashfs systemd-repart -S -s /tmp/test-50-sysext --certificate=/tmp/test-50-cert.crt --private-key=/tmp/test-50-privkey.key /run/extensions/waldo.sysext.raw + + systemd-dissect --mtree /run/extensions/waldo.sysext.raw + + systemd-sysext refresh + + test -f /usr/waldo + + rm /run/verity.d/test-50-cert.crt /run/extensions/waldo.sysext.raw /tmp/test-50-cert.crt /tmp/test-50-privkey.key + + systemd-sysext refresh + + (! test -f /usr/waldo) fi # Sneak in a couple of expected-to-fail invocations to cover -- 2.47.3