Public bug reported: [Impact]
* xe-deamon.service tries to be an early boot unit; before cloud-init-local / networking is setup * However it does not declare DefaultDependencies=no, and thus tries to pull in sysinit.target which should happen after cloud-init-local; yet xe-daemon.service is declared to be before cloud-init-local, thus this is a conflict of interest. * Either xe-deamon should declare DefaultDependencies=no, or just become a regular unit wanted by multi-user.target and the cloud-config.target = Current unit = [Unit] Description=Xen Guest Monitoring Agent After=local-fs.target Requires=proc-xen.mount Before=network.target cloud-init.service cloud-init-local.service ConditionVirtualization=xen ConditionPathExists=/proc/xen/capabilities [Service] ExecStartPre=/usr/sbin/xe-linux-distribution /var/cache/xe-linux-distribution ExecStart=/usr/sbin/xe-daemon StandardOutput=journal+console [Install] WantedBy=multi-user.target = Minimal fix = --- xe-guest-utilities.xe-daemon.service.old 2017-03-03 11:45:48.679700766 +0000 +++ xe-guest-utilities.xe-daemon.service 2017-03-03 11:46:07.923549054 +0000 @@ -1,5 +1,6 @@ [Unit] Description=Xen Guest Monitoring Agent +DefaultDependencies=no After=local-fs.target Requires=proc-xen.mount Before=network.target cloud-init.service cloud-init-local.service = Become a normal unit fix = --- xe-guest-utilities.xe-daemon.service.old 2017-03-03 11:45:48.679700766 +0000 +++ xe-guest-utilities.xe-daemon.service 2017-03-03 11:47:44.842785194 +0000 @@ -1,8 +1,6 @@ [Unit] Description=Xen Guest Monitoring Agent -After=local-fs.target -Requires=proc-xen.mount -Before=network.target cloud-init.service cloud-init-local.service +Before=cloud-config.target ConditionVirtualization=xen ConditionPathExists=/proc/xen/capabilities @@ -13,3 +11,4 @@ [Install] WantedBy=multi-user.target +WantedBy=cloud-config.target == [Test Case] * Boot a cloud instance, with xen hypervisor and cloud-init metdata * There should be no boot cycles [Regression Potential] * Depending choice of the fix, xe-daemon might be starting earlier or later. * Some history checking is required, if xe-daemon must run before cloud-init-local or not * Or if e.g. we only care for ExecStartPre= to run before cloud-init-local [Other Info] * Related bug #1496730 ** Affects: xe-guest-utilities (Ubuntu) Importance: Undecided Status: New ** Affects: xe-guest-utilities (Ubuntu Xenial) Importance: Undecided Status: New ** Affects: xe-guest-utilities (Ubuntu Yakkety) Importance: Undecided Status: New ** Affects: xe-guest-utilities (Ubuntu Zesty) Importance: Undecided Status: New ** Also affects: xe-guest-utilities (Ubuntu Zesty) Importance: Undecided Status: New ** Also affects: xe-guest-utilities (Ubuntu Yakkety) Importance: Undecided Status: New ** Also affects: xe-guest-utilities (Ubuntu Xenial) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1669755 Title: Circular boot dependency cycle with cloud-init et.al. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/xe-guest-utilities/+bug/1669755/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs