Comment 2 for bug 1636912

Revision history for this message
Steve Langasek (vorlon) wrote :

Note that the systemd dependencies shown for cloud-init in xenial (on which Ubuntu Core 16 is based) don't match those listed in the bug description. Instead, xenial currently has:

After=cloud-init-local.service networking.service
Before=network-online.target sshd.service sshd-keygen.service systemd-user-sessions.service
Requires=networking.service
Wants=local-fs.target cloud-init-local.service sshd.service sshd-keygen.service

That's certainly an easier target for fixing the ordering on.

I'm surprised that cloud-init is being ordered before dbus in 16.10+. This appears to have been done in response to bug #1629797. This change to ordering on account of nss-resolve does not give me the warm fuzzies. There's feedback in the end of that bug that cloud-init should *not* be using Before=basic.target / Before=dbus.socket, but instead use Before=sysinit.target. That seems like a change we should be making. But I also didn't understand that we would be using nss-resolve - I missed a nuance in <https://lists.ubuntu.com/archives/ubuntu-devel/2016-June/039406.html>, I thought that once resolved supported DNS, we would use that /instead of/ the NSS module. Is there really a benefit to using both?

Regardless, none of that seems to account for the specific problem reported here, on Ubuntu Core 16; because Ubuntu Core 16 does contain libnss-resolve, but does *not* contain the cloud-init with the DefaultDependencies=no.