← Back to team overview

yahoo-eng-team team mailing list archive

[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