← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1636345] [NEW] cloud-init on FreeBSD for Azure does not work

 

Public bug reported:

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)

** Affects: cloud-init
     Importance: Undecided
         Status: New


** Tags: freebsd

-- 
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:
  cloud-init on FreeBSD for Azure does not work

Status in cloud-init:
  New

Bug description:
  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


Follow ups