cloud-init-dev team mailing list archive
-
cloud-init-dev team
-
Mailing list archive
-
Message #02172
[Merge] ~smoser/cloud-init:bug/before-fsck into cloud-init:master
Scott Moser has proposed merging ~smoser/cloud-init:bug/before-fsck into cloud-init:master.
Commit message:
systemd: make systemd-fsck run after cloud-init.service
cloud-init.service may write filesystems (fs_setup) or re-partition
(disk_setup) disks.
If systemd-fsck is running on a device while that is occuring
then the partitioning or mkfs might fail due to the device being busy.
Alternatively, the fsck might fail and cause subsequent mount to fail.
LP: #1691489
Requested reviews:
cloud-init commiters (cloud-init-dev)
Related bugs:
Bug #1691489 in cloud-init: "fstab entries written by cloud-config may not be mounted"
https://bugs.launchpad.net/cloud-init/+bug/1691489
For more details, see:
https://code.launchpad.net/~smoser/cloud-init/+git/cloud-init/+merge/324191
--
Your team cloud-init commiters is requested to review the proposed merge of ~smoser/cloud-init:bug/before-fsck into cloud-init:master.
diff --git a/setup.py b/setup.py
index 4616599..a61c24a 100755
--- a/setup.py
+++ b/setup.py
@@ -65,6 +65,7 @@ INITSYS_FILES = {
'sysvinit_openrc': [f for f in glob('sysvinit/gentoo/*') if is_f(f)],
'systemd': [f for f in (glob('systemd/*.service') +
glob('systemd/*.target')) if is_f(f)],
+ 'systemd.fsck-dropin': ['systemd/systemd-fsck@.service.d/cloud-init.conf'],
'systemd.generators': [f for f in glob('systemd/*-generator') if is_f(f)],
'upstart': [f for f in glob('upstart/*') if is_f(f)],
}
@@ -76,6 +77,9 @@ INITSYS_ROOTS = {
'systemd': pkg_config_read('systemd', 'systemdsystemunitdir'),
'systemd.generators': pkg_config_read('systemd',
'systemdsystemgeneratordir'),
+ 'systemd.fsck-dropin': (
+ os.path.sep.join([pkg_config_read('systemd', 'systemdsystemunitdir'),
+ 'systemd-fsck@.service.d'])),
'upstart': '/etc/init/',
}
INITSYS_TYPES = sorted([f.partition(".")[0] for f in INITSYS_ROOTS.keys()])
diff --git a/systemd/systemd-fsck@.service.d/cloud-init.conf b/systemd/systemd-fsck@.service.d/cloud-init.conf
new file mode 100644
index 0000000..0bfa465
--- /dev/null
+++ b/systemd/systemd-fsck@.service.d/cloud-init.conf
@@ -0,0 +1,2 @@
+[Unit]
+After=cloud-init.service
References