Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package combustion for openSUSE:Factory 
checked in at 2021-07-28 19:21:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/combustion (Old)
 and      /work/SRC/openSUSE:Factory/.combustion.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "combustion"

Wed Jul 28 19:21:44 2021 rev:11 rq:908901 version:0.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/combustion/combustion.changes    2021-06-21 
09:32:30.315460299 +0200
+++ /work/SRC/openSUSE:Factory/.combustion.new.1899/combustion.changes  
2021-07-28 19:21:52.615490935 +0200
@@ -1,0 +2,7 @@
+Tue Jul 27 06:37:56 UTC 2021 - Fabian Vogt <[email protected]>
+
+- Drop explicit dependency on sysroot.mount. Instead, handle starting and
+  stopping of the unit explicitly to avoid conflicts.
+- Add workaround for gh#systemd/systemd#20329
+
+-------------------------------------------------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ combustion ++++++
--- /var/tmp/diff_new_pack.HTQj1P/_old  2021-07-28 19:21:53.143490242 +0200
+++ /var/tmp/diff_new_pack.HTQj1P/_new  2021-07-28 19:21:53.143490242 +0200
@@ -79,6 +79,15 @@
 
        # umount and remount so that the new default subvol is used
        umount -R /sysroot
+       # Manual umount confuses systemd sometimes because it's async and the
+       # .mount unit might still be active when the "start" is queued, making
+       # it a noop, which ultimately leaves /sysroot unmounted
+       # (https://github.com/systemd/systemd/issues/20329). To avoid that,
+       # wait until systemd processed the umount events. In a chroot (or with
+       # SYSTEMD_OFFLINE=1) systemctl always succeeds, so avoid an infinite 
loop.
+       if ! systemctl is-active does-not-exist.mount; then
+               while systemctl is-active sysroot.mount; do sleep 0.5; done
+       fi
        systemctl start sysroot.mount
 }
 
@@ -96,6 +105,9 @@
        exit 0
 fi
 
+# Make sure /sysroot is mounted
+systemctl start sysroot.mount
+
 # Copy config
 mkdir "${exchangedir}"
 config_dir="${exchangedir}/config"

++++++ combustion.service ++++++
--- /var/tmp/diff_new_pack.HTQj1P/_old  2021-07-28 19:21:53.179490195 +0200
+++ /var/tmp/diff_new_pack.HTQj1P/_new  2021-07-28 19:21:53.179490195 +0200
@@ -5,8 +5,10 @@
 ConditionKernelCommandLine=|ignition.firstboot
 ConditionKernelCommandLine=|combustion.firstboot
 
-Requires=sysroot.mount
-After=sysroot.mount
+# /sysroot needs to be available, but it's temporarily stopped
+# for remounting so a direct requirement is not possible
+Requires=initrd-root-device.target
+After=initrd-root-device.target
 
 # combustion-prepare sets up network, if required
 Requires=combustion-prepare.service

Reply via email to