~dojordan/cloud-init:azuretimeouts

Last commit made on 2018-03-23
Get this branch:
git clone -b azuretimeouts https://git.launchpad.net/~dojordan/cloud-init
Only Douglas Jordan can upload to this branch. If you are Douglas Jordan please log in for upload directions.

Branch merges

Branch information

Name:
azuretimeouts
Repository:
lp:~dojordan/cloud-init

Recent commits

dd1023f... by Douglas Jordan

Fixing exception_cb to match new contract

ed5a580... by Douglas Jordan

Merge branch 'master' into azuretimeouts

097a296... by Kurt Garloff

Revert the logic of exception_cb in read_url.

In commit e9e8616, there was an inversion of the logic of the
exception_cb return value meaning, breaking the (network) OpenStack
DataSource, which implemented exception_cb as should_retry_cb, returning
True when a retry should be done and False when the retry loop should
be broken and the exception reraised again immediately.

The OpenStack DS was the only user of this callback at the time and not
touched by the commit (nor did the commit message mention an intended
change), so this almost certainly happened by mistake.

These days, we have a second user of the callback in DataSourceScaleway.
It uses the new logic, so it needs change if we fix the meaning of the
return value.

This patch reverts the meaning of url_helper.read_url() execption_cb
to the old semantics. It updates the comment and adjusts the Scaleway
datasource.

The patch has been tested on Open Telekom Cloud (which uses the
OpenStack network Datasource) where previously a missing user_data
and network_data.json would be retried 6 times each despite them
not being present (they are optional!) and the server repsonding
with a correct 404. After the patch, boot times are 10s faster,
as we no longer pointlessly retry these files.

LP: #1702160
LP: #1298921

0d51e91... by Chad Smith

ubuntu-advantage: Add new config module to support ubuntu-advantage-tools

ubuntu-advantage-tools is a package for enabling and disabling extended
support services such as Extended Security Maintenance (ESM), Canonical
Livepatch and FIPS certified PPAs. Simplify Ubuntu Advantage setup on
machines by allowing users to provide a list of ubuntu-advantage commands
in cloud-config.

d29eecc... by Ryan Harper

Handle global dns entries in netplan

In network config v1 format, there are dns values which are not bound to a
specific interface and do not map to the per-interface format in netplan.
To handle this case we render netplan configuration that duplicates the
DNS configuration on any interface that has a static network config. We
avoiding interfaces which have DHCP configuration which may provide
conflicting DNS values.

LP: #1750884

7713713... by Kurt Garloff

Identify OpenTelekomCloud Xen as OpenStack DS.

Open Telekom Cloud gen1 (Xen) hosts do not provide nova product
names in DMI but Xen HVM domU. They can however be safely identified
by the OpenTelekomCloud Chassis asset tag. OpenTelekomCloud does
use the network OpenStack DataSource, so we better detect it.

LP: #1756471

685f990... by Chad Smith

datasources: fix DataSource subclass get_hostname method signature

DataSource.get_hostname call signature changed to allow for metadata_only
parameter. The metadata_only=True parameter is passed to get_hostname
during init-local stage in order to set the system hostname if present in
metadata prior to initial network bring up.

Fix subclasses of DataSource which have overridden get_hostname to allow
for metadata_only param.

LP: #1757176

7deec7b... by Akihiko Ota

OpenNebula: Update network to return v2 config rather than ENI.

OpenNebulaNetwork.gen_conf() was previously returning ENI format.
This is updated to return netplan/v2 config.
The changes here also adds support for IPv6 configuration distributed
from OpenNebula and fixes some issues about nameserver information.

e88e354... by Scott Moser

Add Hetzner Cloud DataSource

The Hetzner Cloud metadata service is an AWS-style service available
over HTTP via the link local address 169.254.169.254.

https://hetzner.com/cloud
https://docs.hetzner.cloud/

fb27875... by Douglas Jordan

Merge branch 'master' into azuretimeouts