From: Frantisek Sumsal Date: Mon, 4 Apr 2022 13:58:03 +0000 (+0200) Subject: test: use the new `udevadm wait` verb to wait for the loop device X-Git-Tag: v251-rc2~205^2~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=c189d3bd788950484d13fb5529976601495d077f;p=thirdparty%2Fsystemd.git test: use the new `udevadm wait` verb to wait for the loop device The original workaround didn't work, as `systemd-repart` kept failing even when the `/dev/loopX` device was present: ``` [ 13.959419] H testsuite-58.sh[280]: + LOOP=/dev/loop1 [ 13.959636] H testsuite-58.sh[280]: + : [ 13.959764] H testsuite-58.sh[280]: + test -e /dev/loop1 [ 13.959895] H testsuite-58.sh[280]: + break [ 13.960023] H testsuite-58.sh[280]: + systemd-repart --pretty=yes --definitions=/tmp/testsuite-58-sector/ --seed=750b6cd5c4ae4012a15e7be3c29e6a47 --empty=require --dry-run=no /dev/loop1 [ 13.970538] H testsuite-58.sh[363]: Device '/dev/loop1' has no dm-crypt/dm-verity device, no need to look for underlying block device. [ 13.970538] H testsuite-58.sh[363]: Failed to determine canonical path for '/dev/loop1': No such file or directory [ 13.970538] H testsuite-58.sh[363]: Failed to open file or determine backing device of /dev/loop1: No such file or directory ``` --- diff --git a/test/units/testsuite-58.sh b/test/units/testsuite-58.sh index cef7d094fd5..21f762d3996 100755 --- a/test/units/testsuite-58.sh +++ b/test/units/testsuite-58.sh @@ -174,10 +174,7 @@ rm -r /tmp/testsuite-58.3-defs/ mkdir -p /tmp/testsuite-58-issue-21817-defs/ truncate -s 100m /var/tmp/testsuite-58-issue-21817.img LOOP=$(losetup -P --show -f /var/tmp/testsuite-58-issue-21817.img) -while : ; do - test -e "$LOOP" && break - sleep .2 -done +udevadm wait --timeout 60 --initialized=yes --settle "${LOOP:?}" printf 'size=50M,type=%s\n,\n' "${root_guid}" | sfdisk -X gpt "$LOOP" cat >/tmp/testsuite-58-issue-21817-defs/test.conf <