2021-03-05 12:36:04 +03:00
#!/usr/bin/env bash
2021-10-17 19:13:06 +03:00
# SPDX-License-Identifier: LGPL-2.1-or-later
2021-03-05 12:36:04 +03:00
set -ex
set -o pipefail
mkdir -p /run/udev/rules.d/
rm -f /run/udev/rules.d/50-testsuite.rules
udevadm control --reload
2021-09-16 00:22:18 +03:00
udevadm trigger --settle /dev/sda
2021-03-05 12:36:04 +03:00
while : ; do
(
udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS = foobar.service
udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS = waldo.service
systemctl show -p WantedBy foobar.service | grep -q -v sda
systemctl show -p WantedBy waldo.service | grep -q -v sda
) && break
sleep .5
done
2021-04-08 01:09:55 +03:00
cat >/run/udev/rules.d/50-testsuite.rules <<EOF
2021-03-07 08:18:07 +03:00
SUBSYSTEM = = "block" , KERNEL = = "sda" , OPTIONS = "log_level=debug"
2021-03-05 12:36:04 +03:00
ACTION!= "remove" , SUBSYSTEM = = "block" , KERNEL = = "sda" , ENV{ SYSTEMD_WANTS} = "foobar.service"
EOF
udevadm control --reload
2021-09-16 00:22:18 +03:00
udevadm trigger --settle /dev/sda
2021-03-05 12:36:04 +03:00
while : ; do
(
udevadm info /dev/sda | grep -q SYSTEMD_WANTS = foobar.service
udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS = waldo.service
systemctl show -p WantedBy foobar.service | grep -q sda
systemctl show -p WantedBy waldo.service | grep -q -v sda
) && break
sleep .5
done
2021-04-08 01:09:55 +03:00
cat >/run/udev/rules.d/50-testsuite.rules <<EOF
2021-03-07 08:18:07 +03:00
SUBSYSTEM = = "block" , KERNEL = = "sda" , OPTIONS = "log_level=debug"
2021-03-05 12:36:04 +03:00
ACTION!= "remove" , SUBSYSTEM = = "block" , KERNEL = = "sda" , ENV{ SYSTEMD_WANTS} = "waldo.service"
EOF
udevadm control --reload
2021-09-16 00:22:18 +03:00
udevadm trigger --settle /dev/sda
2021-03-05 12:36:04 +03:00
while : ; do
(
udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS = foobar.service
udevadm info /dev/sda | grep -q SYSTEMD_WANTS = waldo.service
systemctl show -p WantedBy foobar.service | grep -q -v sda
systemctl show -p WantedBy waldo.service | grep -q sda
) && break
sleep .5
done
rm /run/udev/rules.d/50-testsuite.rules
udevadm control --reload
2021-09-16 00:22:18 +03:00
udevadm trigger --settle /dev/sda
2021-03-05 12:36:04 +03:00
while : ; do
(
udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS = foobar.service
udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS = waldo.service
systemctl show -p WantedBy foobar.service | grep -q -v sda
systemctl show -p WantedBy waldo.service | grep -q -v sda
) && break
sleep .5
done
exit 0