group.of.nepali.translators team mailing list archive
-
group.of.nepali.translators team
-
Mailing list archive
-
Message #07783
[Bug 1623868] Re: cloud-final.service does not run due to dependency cycle
This bug was fixed in the package cloud-init -
0.7.8-1-g3705bb5-0ubuntu1~16.04.1
---------------
cloud-init (0.7.8-1-g3705bb5-0ubuntu1~16.04.1) xenial-proposed; urgency=medium
* New upstream release 0.7.8.
* New upstream snapshot.
- systemd: put cloud-init.target After multi-user.target (LP: #1623868)
cloud-init (0.7.7-31-g65ace7b-0ubuntu1~16.04.2) xenial-proposed;
urgency=medium
* debian/control: add Breaks of older versions of walinuxagent (LP:
#1623570)
cloud-init (0.7.7-31-g65ace7b-0ubuntu1~16.04.1) xenial-proposed;
urgency=medium
* debian/control: fix missing dependency on python3-serial,
and make SmartOS datasource work.
* debian/cloud-init.templates fix capitalisation in template so
dpkg-reconfigure works to select OpenStack. (LP: #1575727)
* d/README.source, d/control, d/new-upstream-snapshot, d/rules: sync
with yakkety for changes due to move to git.
* d/rules: change PYVER=python3 to PYVER=3 to adjust to upstream change.
* debian/rules, debian/cloud-init.install: remove install file
to ensure expected files are collected into cloud-init deb.
(LP: #1615745)
* debian/dirs: remove obsolete / unused file.
* upstream move from bzr to git.
* New upstream snapshot.
- Allow link type of null in network_data.json [Jon Grimm] (LP: #1621968)
- DataSourceOVF: fix user-data as base64 with python3 (LP: #1619394)
- remove obsolete .bzrignore
- systemd: Better support package and upgrade. (LP: #1576692, #1621336)
- tests: cleanup tempdirs in apt_source tests
- apt config conversion: treat empty string as not provided. (LP: #1621180)
- Fix typo in default keys for phone_home [Roland Sommer] (LP: #1607810)
- salt minion: update default pki directory for newer salt minion.
(LP: #1609899)
- bddeb: add --release flag to specify the release in changelog.
- apt-config: allow both old and new format to be present.
[Christian Ehrhardt] (LP: #1616831)
- python2.6: fix dict comprehension usage in _lsb_release. [Joshua Harlow]
- Add a module that can configure spacewalk. [Joshua Harlow]
- add install option for openrc [Matthew Thode]
- Generate a dummy bond name for OpenStack (LP: #1605749)
- network: fix get_interface_mac for bond slave, read_sys_net for ENOTDIR
- azure dhclient-hook cleanups
- Minor cleanups to atomic_helper and add unit tests.
- Fix Gentoo net config generation [Matthew Thode]
- distros: fix get_primary_arch method use of os.uname [Andrew Jorgensen]
- Apt: add new apt configuration format [Christian Ehrhardt]
- Get Azure endpoint server from DHCP client [Brent Baude]
- DigitalOcean: use the v1.json endpoint [Ben Howard]
- MAAS: add vendor-data support (LP: #1612313)
- Upgrade to a configobj package new enough to work [Joshua Harlow]
- ConfigDrive: recognize 'tap' as a link type. (LP: #1610784)
- NoCloud: fix bug providing network-interfaces via meta-data.
(LP: 1577982)
- Add distro tags on config modules that should have it [Joshua Harlow]
- ChangeLog: update changelog for previous commit.
- add ntp config module [Ryan Harper]
- SmartOS: more improvements for network configuration
- tools/read-version: update to address change in version
- make-tarball: older versions of git with --format=tar.
- read-version: do not attempt git-describe if no git.
- Newer requests have strong type validation [Joshua Harlow]
- For upstream snapshot versions do not modify git-describe output.
- adjust signal_handler for version changes.
- revert unintended change to ubuntu sources list
- drop modification of version during make-tarball, tools changes.
- adjust tools and version information.
- Update build tools to work with git [Lars Kellogg-Stedman]
- fix pep8 errors in mcollective unit tests
- mcollective: add tests, cleanups and bug fix when no config in /etc.
-- Scott Moser <smoser@xxxxxxxxxx> Thu, 15 Sep 2016 09:57:27 -0400
** Changed in: cloud-init (Ubuntu Xenial)
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1623868
Title:
cloud-final.service does not run due to dependency cycle
Status in cloud-init package in Ubuntu:
Fix Released
Status in cloud-init source package in Xenial:
Fix Released
Bug description:
==== Begin SRU Template ====
[Impact]
As part of the change in bug 1576692, we made cloud-final.target
run After multi-user.target. That created a dependency loop between
cloud-init.target and multi-user.target and cloud-final.target.
Most of the time systemd would break that loop by dropping
cloud-init.target. But sometimes, it would break the loop by dropping
cloud-final.target, which would mean that user scripts do not run
and generally cloud-init doesn't finish.
[Test Case]
## Failure in a xenial image can only be reproduced by
## patching an image up to the previous xenial-proposed upload
## (0.7.7-31-g65ace7b-0ubuntu1~16.04.1), then cleaning it
## and then restarting. We will focus on verifying there is not
## a problem.
## Launch an instance and patch it up to xenial-proposed
$ release=xenial
$ name=x1
$ lxc launch ubuntu-daily:$release $name
# wait for it to boot
$ while ! lxc exec $name -- [ -e /run/cloud-init/result.json ]; do sleep 1; done
## Now update container, clean and reboot to show first boot
$ lxc exec $name -- sh -c '
p=/etc/apt/sources.list.d/proposed.list
echo deb http://archive.ubuntu.com/ubuntu xenial-proposed main > "$p" &&
apt-get update -q && apt-get -qy install cloud-init'
$ lxc exec $name -- sh -c '
cd /var/lib/cloud && for d in *; do [ "$d" = "seed" ] || rm -Rf "$d"; done
rm -Rf /var/log/cloud-init*'
## This is like first boot now.
$ lxc exec $name reboot
$ while ! lxc exec $name -- [ -e /run/cloud-init/result.json ]; do sleep 1; done
## The services should show active
$ lxc exec $name -- journalctl | grep Break || echo Good, no breaks
$ lxc exec $name -- systemctl --no-pager status cloud-final.service
$ lxc exec $name -- systemctl --no-pager status cloud-init.target
[Regression Potential]
Playing with boot order can cause problems. Regression would be around
some targets not running. On a booted system this would show itself inx
journalctl | grep -i Break
or
journalctl | grep -i ordering
==== End SRU Template ====
With current yakkety cloud images (at least in Scalingstack), I often
run into this dependency cycle at boot:
Sep 15 09:28:51 ubuntu systemd[1]: cloud-init.target: Found ordering cycle on cloud-init.target/start
Sep 15 09:28:51 ubuntu systemd[1]: cloud-init.target: Found dependency on cloud-final.service/start
Sep 15 09:28:51 ubuntu systemd[1]: cloud-init.target: Found dependency on multi-user.target/start
Sep 15 09:28:51 ubuntu systemd[1]: cloud-init.target: Found dependency on cloud-init.target/start
Sep 15 09:28:51 ubuntu systemd[1]: cloud-init.target: Breaking ordering cycle by deleting job cloud-final.service/start
Sep 15 09:28:51 ubuntu systemd[1]: cloud-final.service: Job cloud-final.service/start deleted to break ordering cycle starting with cloud-init.target/start
● cloud-final.service - Execute cloud user/final scripts
Loaded: loaded (/lib/systemd/system/cloud-final.service; enabled; vendor preset: enabled)
Active: inactive (dead)
Thus /var/lib/cloud/instance/boot-finished never gets written and thus
waiting for an instance to init just times out.
This is with the most recent https://launchpad.net/ubuntu/+source
/cloud-init/0.7.7-31-g65ace7b-0ubuntu1
Related bugs:
* bug 1576692: fully support package installation in systemd
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/cloud-init/+bug/1623868/+subscriptions