yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #65369
[Bug 1636345] Re: [Hyper-V][Azure] cloud-init on FreeBSD for Azure does not work
This bug was fixed in the package cloud-init - 0.7.9-153-g16a7302f-
0ubuntu1~16.10.1
---------------
cloud-init (0.7.9-153-g16a7302f-0ubuntu1~16.10.1) yakkety-proposed; urgency=medium
* New upstream snapshot.
- net: fix reading and rendering addresses in cidr format.
[Dimitri John Ledkov] (LP: #1689346, #1684349)
- disk_setup: udev settle before attempting partitioning or fs creation.
(LP: #1692093)
- GCE: Update the attribute used to find instance SSH keys.
[Daniel Watkins] (LP: #1693582)
- nplan: For bonds, allow dashed or underscore names of keys.
[Dimitri John Ledkov] (LP: #1690480)
- tests: python2.6: fix unit tests usage of assertNone and format.
- tests: update docstring on test_configured_list_with_none
- fix tools/ds-identify to not write None twice.
- tox/build: do not package depend on style requirements.
- tests: ntp: Restructure cc_ntp unit tests. [Chad Smith]
- flake8: move the pinned version of flake8 up to 3.3.0
- tests: Apply workaround for snapd bug in test case. [Joshua Powers]
- RHEL/CentOS: Fix dual stack IPv4/IPv6 configuration. [Andreas Karis]
- disk_setup: fix several issues with gpt disk partitions. (LP: #1692087)
- function spelling & docstring update [Joshua Powers]
- tests: Fix unittest bug in ntp tests. [Joshua Powers]
- tox: move pylint target to 1.7.1
- Fix get_interfaces_by_mac for empty macs (LP: #1692028)
- DigitalOcean: remove routes except for the public interface.
[Ben Howard] (LP: #1681531.)
- netplan: pass macaddress, when specified, for vlans
[Dimitri John Ledkov] (LP: #1690388)
- doc: various improvements for the docs on cc_users_groups.
[Felix Dreissig]
- cc_ntp: write template before installing and add service restart
[Ryan Harper] (LP: #1645644)
- tests: fix cloudstack unit tests to avoid accessing
/var/lib/NetworkManager [Lars Kellogg-Stedman]
- tests: fix hardcoded path to mkfs.ext4 [Joshua Powers] (LP: #1691517)
- Actually skip warnings when .skip file is present.
[Chris Brinker] (LP: #1691551)
- netplan: fix netplan render_network_state signature.
[Dimitri John Ledkov] (LP: #1685944)
- Azure: fix reformatting of ephemeral disks on resize to large types.
(LP: #1686514)
- make deb: Add devscripts dependency for make deb.
Cleanup packages/bddeb. [Chad Smith] (LP: #1685935)
- openstack: fix log message copy/paste typo in _get_url_settings
[Lars Kellogg-Stedman]
- unittests: fix unittests run on centos [Joshua Powers]
- Improve detection of snappy to include os-release and kernel cmdline.
(LP: #1689944)
- Add address to config entry generated by _klibc_to_config_entry.
[Julien Castets] (LP: #1691135)
- sysconfig: Raise ValueError when multiple default gateways are present.
[Chad Smith] (LP: #1687485)
- FreeBSD: improvements and fixes for use on Azure
[Hongjiang Zhang] (LP: #1636345)
- Add unit tests for ds-identify, fix Ec2 bug found.
- fs_setup: if cmd is specified, use shell interpretation.
[Paul Meyer] (LP: #1687712)
- doc: document network configuration defaults policy and formats.
[Ryan Harper]
- doc: Fix name of "uri" key in docs for "cc_apt_configure" module
[Felix Dreissig]
- tests: Enable artful in integration tests [Joshua Powers]
-- Scott Moser <smoser@xxxxxxxxxx> Fri, 26 May 2017 16:08:21 -0400
** Changed in: cloud-init (Ubuntu Yakkety)
Status: Fix Committed => Fix Released
** Changed in: cloud-init (Ubuntu Xenial)
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to cloud-init.
https://bugs.launchpad.net/bugs/1636345
Title:
[Hyper-V][Azure] cloud-init on FreeBSD for Azure does not work
Status in cloud-init:
Fix Committed
Status in cloud-init package in Ubuntu:
Fix Released
Status in cloud-init source package in Xenial:
Fix Released
Status in cloud-init source package in Yakkety:
Fix Released
Status in cloud-init source package in Zesty:
Fix Released
Bug description:
=== Begin SRU Template ===
[Impact]
FreeBSD users on Azure will suffer from this bug.
FreeBSD is another OS which has many differences compared with Linux, so it needs a lot of changes to support cloud-init for FreeBSD on Azure.
This bug did not affect Ubuntu.
[Test Case]
== FreeBSD Test Case (should not be required for Ubuntu SRU) ==
Install cloud-init through its embedded shell script: tools/build-on-freebsd on a
Hyper-V VM, upload the VM to Azure and check whether it can pass provisioning.
== Ubuntu Test Case ==
Ubuntu test case is really just to verify no regression.
The test case is to:
* launch a vm on azure
* add proposed, upgrade
* clean instance: rm -Rf /var/lib/cloud /var/log/cloud-init
* reboot
* [test first boot] ssh back in, verify no 'WARN' in /var/log/cloud-init.log
* reboot
* [test second boot] ssh back in, verify no 'WARN' in /var/log/cloud-init.log
[Regression Potential]
This patch changes some utils for generic FreeBSD, and it takes impact for
cloud-init on OpenStack for FreeBSD OS.
The changes did affect other cloud-init path. The regressions should largely
be limited to the Azure datasource.
[Other Info]
Upstream commit at
https://git.launchpad.net/cloud-init/commit/?id=0a71d5a870b416
=== End SRU Template ===
I run cloud-init 0.7.6 on FreeBSD 10.3 on Azure. But it cannot work
because it find data source through "blkid" command which is not
supported on FreeBSD.
Please refer to https://github.com/Azure/WALinuxAgent about how to
find CDROM on FreeBSD.
root@honzhancloudinit:/usr/home/honzhan # python /usr/local/bin/cloud-init --debug init
2016-10-24 17:32:21,045 - util.py[DEBUG]: Reading from /var/lib/cloud/data/status.json (quiet=False)
2016-10-24 17:32:21,047 - util.py[DEBUG]: Read 446 bytes from /var/lib/cloud/data/status.json
2016-10-24 17:32:21,048 - util.py[DEBUG]: Creating symbolic link from '/run/cloud-init/status.json' => '../../var/lib/cloud/data/status.json'
2016-10-24 17:32:21,048 - util.py[DEBUG]: Attempting to remove /run/cloud-init/status.json
2016-10-24 17:32:21,050 - util.py[DEBUG]: Reading from /proc/cmdline (quiet=False)
2016-10-24 17:32:21,050 - templater.py[WARNING]: Cheetah not available as the default renderer for unknown template, reverting to the basic renderer.
2016-10-24 17:32:21,050 - util.py[DEBUG]: Reading from /proc/cmdline (quiet=False)
2016-10-24 17:32:21,052 - util.py[DEBUG]: Reading from /etc/cloud/cloud.cfg (quiet=False)
2016-10-24 17:32:21,052 - util.py[DEBUG]: Read 2012 bytes from /etc/cloud/cloud.cfg
2016-10-24 17:32:21,053 - util.py[DEBUG]: Attempting to load yaml from string of length 2012 with allowed root types (<type 'dict'>,)
2016-10-24 17:32:21,077 - cloud-init[DEBUG]: Closing stdin
2016-10-24 17:32:21,078 - cloud-init[DEBUG]: Logging being reset, this logger may no longer be active shortly
WARN: no logging configured! (tried 0 configs)
Setting up basic logging...
Cloud-init v. 0.7.6 running 'init' at Mon, 24 Oct 2016 09:32:21 +0000. Up 441006.050463 seconds.
2016-10-24 17:32:21,080 - util.py[DEBUG]: Cloud-init v. 0.7.6 running 'init' at Mon, 24 Oct 2016 09:32:21 +0000. Up 441006.050463 seconds.
2016-10-24 17:32:21,085 - util.py[DEBUG]: Writing to /var/log/cloud-init.log - ab: [420] 0 bytes
2016-10-24 17:32:21,088 - util.py[DEBUG]: Changing the ownership of /var/log/cloud-init.log to 0:0
2016-10-24 17:32:21,089 - util.py[DEBUG]: Running command ['ifconfig', '-a'] with allowed return codes [0] (shell=False, capture=True)
2016-10-24 17:32:21,107 - util.py[DEBUG]: Running command ['netstat', '-rn'] with allowed return codes [0] (shell=False, capture=True)
ci-info: ++++++++++++++++++++++++Net device info++++++++++++++++++++++++
ci-info: +--------+------+------------+------------+-------------------+
ci-info: | Device | Up | Address | Mask | Hw-Address |
ci-info: +--------+------+------------+------------+-------------------+
ci-info: | hn0: | True | 172.21.0.4 | 0xffffff00 | 00:0d:3a:a0:48:83 |
ci-info: | lo0: | True | 127.0.0.1 | 0xff000000 | . |
ci-info: +--------+------+------------+------------+-------------------+
ci-info: ++++++++++++++++++++++++++Route info+++++++++++++++++++++++++++
ci-info: +-------+-------------+---------+---------+-----------+-------+
ci-info: | Route | Destination | Gateway | Genmask | Interface | Flags |
ci-info: +-------+-------------+---------+---------+-----------+-------+
ci-info: +-------+-------------+---------+---------+-----------+-------+
2016-10-24 17:32:21,119 - cloud-init[DEBUG]: Checking to see if files that we need already exist from a previous run that would allow us to stop early.
2016-10-24 17:32:21,120 - util.py[DEBUG]: Reading from /var/lib/cloud/data/no-net (quiet=False)
2016-10-24 17:32:21,121 - util.py[DEBUG]: Reading from /var/lib/cloud/instance/obj.pkl (quiet=False)
2016-10-24 17:32:21,124 - cloud-init[DEBUG]: Execution continuing, no previous run detected that would allow us to stop early.
2016-10-24 17:32:21,124 - util.py[DEBUG]: Reading from /var/lib/cloud/instance/obj.pkl (quiet=False)
2016-10-24 17:32:21,126 - stages.py[DEBUG]: Using distro class <class 'cloudinit.distros.freebsd.Distro'>
2016-10-24 17:32:21,127 - __init__.py[DEBUG]: Looking for for data source in: ['Azure'], via packages ['', 'cloudinit.sources'] that matches dependencies ['FILESYSTEM', 'NETWORK']
2016-10-24 17:32:21,138 - __init__.py[DEBUG]: Searching for data source in: ['DataSourceAzureNet']
2016-10-24 17:32:21,139 - __init__.py[DEBUG]: Seeing if we can get any data from <class 'cloudinit.sources.DataSourceAzure.DataSourceAzureNet'>
2016-10-24 17:32:21,140 - util.py[DEBUG]: Running command ['blkid', '-tTYPE=iso9660', '-odevice'] with allowed return codes [0, 2] (shell=False, capture=True)
2016-10-24 17:32:21,157 - util.py[WARNING]: Getting data from <class 'cloudinit.sources.DataSourceAzure.DataSourceAzureNet'> failed
2016-10-24 17:32:21,158 - util.py[DEBUG]: Getting data from <class 'cloudinit.sources.DataSourceAzure.DataSourceAzureNet'> failed
Traceback (most recent call last):
File "/usr/local/lib/python2.7/site-packages/cloudinit/sources/__init__.py", line 253, in find_source
if s.get_data():
File "/usr/local/lib/python2.7/site-packages/cloudinit/sources/DataSourceAzure.py", line 90, in get_data
candidates.extend(list_possible_azure_ds_devs())
File "/usr/local/lib/python2.7/site-packages/cloudinit/sources/DataSourceAzure.py", line 583, in list_possible_azure_ds_devs
devlist.extend(util.find_devs_with("TYPE=%s" % fstype))
File "/usr/local/lib/python2.7/site-packages/cloudinit/util.py", line 1050, in find_devs_with
(out, _err) = subp(cmd, rcs=[0, 2])
File "/usr/local/lib/python2.7/site-packages/cloudinit/util.py", line 1565, in subp
raise ProcessExecutionError(cmd=args, reason=e)
ProcessExecutionError: Unexpected error while running command.
Command: ['blkid', '-tTYPE=iso9660', '-odevice']
Exit code: -
Reason: [Errno 2] No such file or directory
Stdout: ''
Stderr: ''
2016-10-24 17:32:21,159 - util.py[WARNING]: No instance datasource found! Likely bad things to come!
2016-10-24 17:32:21,159 - util.py[DEBUG]: No instance datasource found! Likely bad things to come!
Traceback (most recent call last):
File "/usr/local/bin/cloud-init", line 245, in main_init
init.fetch()
File "/usr/local/lib/python2.7/site-packages/cloudinit/stages.py", line 308, in fetch
return self._get_data_source()
File "/usr/local/lib/python2.7/site-packages/cloudinit/stages.py", line 236, in _get_data_source
pkg_list)
File "/usr/local/lib/python2.7/site-packages/cloudinit/sources/__init__.py", line 260, in find_source
raise DataSourceNotFoundException(msg)
DataSourceNotFoundException: Did not find any data source, searched classes: (DataSourceAzureNet)
2016-10-24 17:32:21,161 - util.py[DEBUG]: cloud-init mode 'init' took 0.119 seconds (0.12)
To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-init/+bug/1636345/+subscriptions
References