~smoser/cloud-init:feature/driver-enablement

Last commit made on 2018-08-21
Get this branch:
git clone -b feature/driver-enablement https://git.launchpad.net/~smoser/cloud-init
Only Scott Moser can upload to this branch. If you are Scott Moser please log in for upload directions.

Branch merges

Branch information

Name:
feature/driver-enablement
Repository:
lp:~smoser/cloud-init

Recent commits

0fad520... by Scott Moser

address Ryan's feedback.

1823090... by Scott Moser

address chad's feedback.

a750caf... by Scott Moser

use - not _ in cloud.cfg name

e0fd273... by Scott Moser

Add ubuntu_drivers config module.

The ubuntu_drivers config module allows usage of 'ubuntu-drivers'
command. At this point it only serves as a way of installing a
general purpose graphics processing unit (gpgpu) functionality.

aaffd59... by Scott Moser

Add datasource Oracle Compute Infrastructure (OCI).

This adds a Oracle specific datasource that functions with OCI.
It is a simplified version of the OpenStack metadata server
with support for vendor-data.

It does not support the OCI-C (classic) platform.

Also here is a move of BrokenMetadata to common 'sources'
as this was the third occurrence of that class.

47548df... by Chad Smith

azure: allow azure to generate network configuration from IMDS per boot.

Azure datasource now queries IMDS metadata service for network
configuration at link local address
http://169.254.169.254/metadata/instance?api-version=2017-12-01. The
azure metadata service presents a list of macs and allocated ip addresses
associated with this instance. Azure will now also regenerate network
configuration on every boot because it subscribes to EventType.BOOT
maintenance events as well as the 'first boot'
EventType.BOOT_NEW_INSTANCE.

For testing add azure-imds --kind to cloud-init devel net_convert tool
for debugging IMDS metadata.

Also refactor _get_data into 3 discrete methods:
  - is_platform_viable: check quickly whether the datasource is
    potentially compatible with the platform on which is is running
  - crawl_metadata: walk all potential metadata candidates, returning a
    structured dict of all metadata and userdata. Raise InvalidMetaData on
    error.
  - _get_data: call crawl_metadata and process results or error. Cache
    instance data on class attributes: metadata, userdata_raw etc.

51f49dc... by Louis Bouchard <email address hidden>

Scaleway: Add network configuration to the DataSource

DEP_NETWORK is removed since the network_config must
run at each boot. New EventType.BOOT event is used
for that.

Network is brought up early to fetch the metadata which
is required to configure the network (ipv4 and/or v6).

Adds unittests for the following and fixes test_common for
LOCAL and NETWORK sets.

f624927... by Wesley Gao

docs: Fix example cloud-init analyze command to match output.

Fix a typo in in documentation that showed 'analyze blame' but
intended to show 'analyze dump'.

41f508d... by Scott Moser

netplan: Correctly render macaddress on a bonds and bridges when provided.

When converting network config v1 to netplan, we were not correctly
rendering the 'macaddress' key on a bond. Not that the difference
in spelling between v1 'mac_address' and v2 'macaddress' is intentional.
Also fixed here is rendering of the macaddress for bridges.

LP: #1784699

a6f95c7... by Scott Moser

tools: Add 'net-convert' subcommand command to 'cloud-init devel'.

Move the tools/net-convert.py to be exposed as part of 'cloud-init devel'
subcommands.
It can now be called like:
  $ cloud-init devel net-convert
Or, if you just have checked out source (and no cli executable):

  $ python3 -m cloudinit.cmd.devel.net_convert
or
  $ python3 -m cloudinit.cmd.main devel net-convert