Merge ~smoser/cloud-init:bug/1611074 into cloud-init:master

Proposed by Scott Moser
Status: Merged
Merged at revision: 80f5ec4be0f781b26eca51d90d51abfab396b3f6
Proposed branch: ~smoser/cloud-init:bug/1611074
Merge into: cloud-init:master
Diff against target: 122 lines (+24/-10)
5 files modified
cloudinit/config/cc_mounts.py (+2/-2)
cloudinit/sources/DataSourceAzure.py (+5/-2)
config/cloud.cfg (+2/-2)
systemd/cloud-init-local.service (+2/-1)
systemd/cloud-init.service (+13/-3)
Reviewer Review Type Date Requested Status
cloud-init Commiters Pending
Review via email: mp+306145@code.launchpad.net
To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/cloudinit/config/cc_mounts.py b/cloudinit/config/cc_mounts.py
2index 2b98193..4084118 100644
3--- a/cloudinit/config/cc_mounts.py
4+++ b/cloudinit/config/cc_mounts.py
5@@ -265,7 +265,7 @@ def handle(_name, cfg, cloud, log, _args):
6 # fs_spec, fs_file, fs_vfstype, fs_mntops, fs-freq, fs_passno
7 def_mnt_opts = "defaults,nobootwait"
8 if cloud.distro.uses_systemd():
9- def_mnt_opts = "defaults,nofail"
10+ def_mnt_opts = "defaults,nofail,x-systemd.requires=cloud-init.service"
11
12 defvals = [None, None, "auto", def_mnt_opts, "0", "2"]
13 defvals = cfg.get("mount_default_fields", defvals)
14@@ -401,5 +401,5 @@ def handle(_name, cfg, cloud, log, _args):
15
16 try:
17 util.subp(("mount", "-a"))
18- except Exception:
19+ except util.ProcessExecutionError:
20 util.logexc(log, "Activating mounts via 'mount -a' failed")
21diff --git a/cloudinit/sources/DataSourceAzure.py b/cloudinit/sources/DataSourceAzure.py
22index dbc2bb6..b802b03 100644
23--- a/cloudinit/sources/DataSourceAzure.py
24+++ b/cloudinit/sources/DataSourceAzure.py
25@@ -252,7 +252,7 @@ class DataSourceAzureNet(sources.DataSource):
26
27 cc_modules_override = support_new_ephemeral(self.sys_cfg)
28 if cc_modules_override:
29- self.cfg['cloud_config_modules'] = cc_modules_override
30+ self.cfg['cloud_init_modules'] = cc_modules_override
31
32 return True
33
34@@ -283,11 +283,14 @@ def find_fabric_formatted_ephemeral_part():
35 device_location = potential_location
36 break
37 if device_location is None:
38+ LOG.debug("no azure resource disk partition path found")
39 return None
40 ntfs_devices = util.find_devs_with("TYPE=ntfs")
41 real_device = os.path.realpath(device_location)
42 if real_device in ntfs_devices:
43 return device_location
44+ LOG.debug("'%s' existed (%s) but was not ntfs formated",
45+ device_location, real_device)
46 return None
47
48
49@@ -342,7 +345,7 @@ def support_new_ephemeral(cfg):
50 LOG.debug("cloud-init will format ephemeral0.1 this boot.")
51 LOG.debug("setting disk_setup and mounts modules 'always' for this boot")
52
53- cc_modules = cfg.get('cloud_config_modules')
54+ cc_modules = cfg.get('cloud_init_modules')
55 if not cc_modules:
56 return None
57
58diff --git a/config/cloud.cfg b/config/cloud.cfg
59index 7c94ec5..3b4c538 100644
60--- a/config/cloud.cfg
61+++ b/config/cloud.cfg
62@@ -30,6 +30,8 @@ cloud_init_modules:
63 - write-files
64 - growpart
65 - resizefs
66+ - disk_setup
67+ - mounts
68 - set_hostname
69 - update_hostname
70 - update_etc_hosts
71@@ -43,8 +45,6 @@ cloud_config_modules:
72 # Emit the cloud config ready event
73 # this can be used by upstart jobs for 'start on cloud-config'.
74 - emit_upstart
75- - disk_setup
76- - mounts
77 - ntp
78 - ssh-import-id
79 - locale
80diff --git a/systemd/cloud-init-local.service b/systemd/cloud-init-local.service
81index b19eeae..bc2db60 100644
82--- a/systemd/cloud-init-local.service
83+++ b/systemd/cloud-init-local.service
84@@ -4,9 +4,10 @@ DefaultDependencies=no
85 Wants=local-fs.target
86 Wants=network-pre.target
87 After=local-fs.target
88-Conflicts=shutdown.target
89+Before=basic.target
90 Before=network-pre.target
91 Before=shutdown.target
92+Conflicts=shutdown.target
93
94 [Service]
95 Type=oneshot
96diff --git a/systemd/cloud-init.service b/systemd/cloud-init.service
97index 6fb655e..1e392a3 100644
98--- a/systemd/cloud-init.service
99+++ b/systemd/cloud-init.service
100@@ -1,9 +1,19 @@
101 [Unit]
102 Description=Initial cloud-init job (metadata service crawler)
103-After=cloud-init-local.service networking.service
104-Before=network-online.target sshd.service sshd-keygen.service systemd-user-sessions.service
105+DefaultDependencies=no
106+Wants=cloud-init-local.service
107+Wants=local-fs.target
108+Wants=sshd-keygen.service
109+Wants=sshd.service
110+After=cloud-init-local.service
111+After=networking.service
112 Requires=networking.service
113-Wants=local-fs.target cloud-init-local.service sshd.service sshd-keygen.service
114+Before=basic.target
115+Before=network-online.target
116+Before=sshd-keygen.service
117+Before=sshd.service
118+Before=systemd-user-sessions.service
119+Conflicts=shutdown.target
120
121 [Service]
122 Type=oneshot

Subscribers

People subscribed via source and target branches