]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
machine: tests for io.systemd.Machine.BindMount 35066/head
authorIvan Kruglov <mail@ikruglov.com>
Wed, 18 Dec 2024 18:08:00 +0000 (19:08 +0100)
committerIvan Kruglov <mail@ikruglov.com>
Thu, 2 Jan 2025 15:58:16 +0000 (16:58 +0100)
test/units/TEST-13-NSPAWN.machined.sh
test/units/TEST-13-NSPAWN.nspawn.sh

index a0a10ef30749a9ec6109fe87493d5efa9ad84999..11f6a6f483d43986de87645e12685d87e3c4c866 100755 (executable)
@@ -401,6 +401,8 @@ varlinkctl call /run/systemd/machine/io.systemd.Machine io.systemd.Machine.Open
 timeout 30 bash -c "until test -e /tmp/none-existent-file; do sleep .5; done"
 grep -q "BAR" /tmp/none-existent-file
 
+# io.systemd.Machine.BindMount is covered by testcase_check_machinectl_bind() in nspawn tests
+
 # terminate machines
 machinectl terminate long-running
 # wait for the container being stopped, otherwise acquiring image metadata by io.systemd.MachineImage.List may fail in the below.
index f5615755820e00094822119c18f373dd14aef24c..1b0ff77889dd3db0a2615599f407cc1c48786b85 100755 (executable)
@@ -796,7 +796,7 @@ EOF
 
 testcase_machinectl_bind() {
     local service_path service_name root container_name ec
-    local cmd='for i in $(seq 1 20); do if test -f /tmp/marker; then exit 0; fi; sleep .5; done; exit 1;'
+    local cmd='for i in $(seq 1 20); do if test -f /tmp/marker && test -f /tmp/marker-varlink; then exit 0; fi; sleep .5; done; exit 1;'
 
     root="$(mktemp -d /var/lib/machines/TEST-13-NSPAWN.machinectl-bind.XXX)"
     create_dummy_container "$root"
@@ -814,6 +814,8 @@ EOF
     systemctl start "$service_name"
     touch /tmp/marker
     machinectl bind --mkdir "$container_name" /tmp/marker
+    touch /tmp/marker-varlink
+    varlinkctl call /run/systemd/machine/io.systemd.Machine io.systemd.Machine.BindMount "{\"name\": \"$container_name\", \"source\": \"/tmp/marker-varlink\", \"mkdir\": true}"
 
     timeout 10 bash -c "while [[ '\$(systemctl show -P SubState $service_name)' == running ]]; do sleep .2; done"
     ec="$(systemctl show -P ExecMainStatus "$service_name")"