Accepting request 908901 from devel:kubic:ignition
OBS-URL: https://build.opensuse.org/request/show/908901 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/combustion?expand=0&rev=11
This commit is contained in:
commit
241fd1dcb5
12
combustion
12
combustion
@ -79,6 +79,15 @@ cleanup() {
|
||||
|
||||
# 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 @@ if ! [ -d "${config_mount}/combustion" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Make sure /sysroot is mounted
|
||||
systemctl start sysroot.mount
|
||||
|
||||
# Copy config
|
||||
mkdir "${exchangedir}"
|
||||
config_dir="${exchangedir}/config"
|
||||
|
@ -1,3 +1,10 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Jul 27 06:37:56 UTC 2021 - Fabian Vogt <fvogt@suse.com>
|
||||
|
||||
- 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
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 21 07:07:23 UTC 2021 - Fabian Vogt <fvogt@suse.com>
|
||||
|
||||
|
@ -5,8 +5,10 @@ DefaultDependencies=false
|
||||
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
|
||||
|
Loading…
Reference in New Issue
Block a user