~pengpengs/cloud-init:master

Last commit made on 2018-08-07
Get this branch:
git clone -b master https://git.launchpad.net/~pengpengs/cloud-init
Only Pengpeng Sun can upload to this branch. If you are Pengpeng Sun please log in for upload directions.

Branch merges

Branch information

Name:
master
Repository:
lp:~pengpengs/cloud-init

Recent commits

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

e218c59... by Scott Moser

redhat: remove ssh keys on new instance.

This changes redhat's default behavior to remove the ssh keys on
new instance (ssh_deletekeys will now be at its default true value).

On redhat systems, cloud-init.service has both:
  Wants=sshd-keygen.service
  Before=sshd-keygen.serviceh

Which is why 'ssh_genkeytypes' is set to None
(yaml '~' == yaml null == python none).

I've changed that to be null as it seems more clear and we do not
use the tilda anywhere else in configs.

LP: #1781094
rhbz: https://bugzilla.redhat.com/show_bug.cgi?id=1598832

538af8e... by Scott Moser

Use typeset or local in profile.d scripts.

Bash and most other "bourne-like" shells allow declaring function
local variables via 'local'. ksh does not. Instead of using 'local'
always, use 'typeset' when the KSH_VERSION variable is present in
environment.

LP: #1784713

01cfa71... by Akihiko Ota

OpenNebula: Fix null gateway6

The OpenNebula data source generates an invalid netplan yaml file
if the IPv6 gateway is not defined in context.sh.

LP: #1768547

3cee0bf... by Chad Smith

oracle: fix detect_openstack to report True on OracleCloud.com DMI data

The OpenStack datasource in 18.3 changed to detect data in the
init-local stage instead of init-network and attempted to redetect
OpenStackLocal datasource on Oracle across reboots. The function
detect_openstack was added to quickly detect whether a platform is
OpenStack based on dmi product_name or chassis_asset_tag and it was
a bit too strict for Oracle in checking for 'OpenStack Nova'/'Compute'
DMI product_name.

Oracle's DMI product_name reports 'SAtandard PC (i440FX + PIIX, 1996)'
and DMI chassis_asset_tag is 'OracleCloud.com'.

detect_openstack function now adds 'OracleCloud.com' as a supported value
'OracleCloud.com' to valid chassis-asset-tags for the OpenStack
datasource.

LP: #1784685

361ae34... by Scott Moser

tests: improve LXDInstance trying to workaround or catch bug.

Described in bug 1783198 we have seen some transient failures when
using pylxd -> lxd api.
This does:
 * adds a str() representation of LXDInstance
 * checks the value of the pylxd_container object on instantion
 * sets pylxd_container object to None on deletion.
 * adds retry logic to shutdown()

3146c96... by Mike Gerdts

update_metadata re-config on every boot comments and tests not quite right

The comment in update_metadata() that explains how a datasource should
enable network reconfig on every boot presumes that
EventType.BOOT_NEW_INSTANCE is a subset of EventType.BOOT. That's not
the case, and as such a datasource that needs to configure networking
when it is a new instance and every boot needs to include both event
types.

To make the situation above easier to debug, update_metadata() now
logs when it returns false.

To make it so that datasources do not need to test before appending to
the update_events['network'], it is changed from a list to a set.

test_update_metadata_only_acts_on_supported_update_events is updated
to allow datasources to support EventType.BOOT.

Author: Mike Gerdts <email address hidden>

6a9e576... by Scott Moser

tests: Collect build_info from system if available.

This adds a script to always get the /etc/cloud/build.info file
if it exists, and a hook when preparing the image to log the information
if it is available.

INFO - setting up ubuntu-cosmic (build_name=server serial=20180718)

This is just useful for debug and reproduce.