~smoser/cloud-init:fix/1798117-allow-toplevel-network-in-network-config

Last commit made on 2018-12-03
Get this branch:
git clone -b fix/1798117-allow-toplevel-network-in-network-config 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:
fix/1798117-allow-toplevel-network-in-network-config
Repository:
lp:~smoser/cloud-init

Recent commits

a1337d0... by Scott Moser on 2018-10-30

Adjust to chad's suggestions.

only shift if both config and version are present or the
config element == "disabled"

b1610ea... by Scott Moser on 2018-10-16

NoCloud: Allow top level 'network' key in network-config.

NoCloud's 'network-config' file was originally expected to contain
network configuration without the top level 'network' key. This was
because the file was named 'network-config' so specifying 'network'
seemed redundant.

However, JuJu is currently providing a top level 'network' config when
it tries to disable networking ({"network": {"config": "disabled"}).
Other users have also been surprised/confused by the fact that
a network config in /etc/cloud/cloud.cfg.d/network.cfg differed from
what was expected in 'network-config'.

LP: #1798117

cb44ad6... by Ryan Harper on 2018-12-03

ovf: Fix ovf network config generation gateway/routes

Move routes under the nic's subnet rather than use top-level
("global") route config ensuring all net renderers will provide the
configured route.

Also updated cloudinit/cmd/devel/net_convert.py:
 - Add input type 'vmware-imc' for OVF customization config files
 - Fix bug when output-type was netplan which invoked netplan
  generate/apply and attempted to write to
  /etc/netplan/50-cloud-init.yaml instead of joining with the
  output directory.

LP: #1806103

bf79171... by Tamilmani Manoharan on 2018-11-29

azure: detect vnet migration via netlink media change event

Replace Azure pre-provision polling on IMDS with a blocking call
which watches for netlink link state change messages. The media
change event happens when a pre-provisioned VM has been activated
and is connected to the users virtual network and cloud-init can
then resume operation to complete image instantiation.

c7c395c... by Adam DePue on 2018-11-29

Azure: fix copy/paste error in error handling when reading azure ovf.

Check the appropriate variables based on code review. Correcting what
seems to be a copy/paste mistake for the error handling from a few lines
above.

4ce8a28... by Scott Moser on 2018-11-28

tests: fix incorrect order of mocks in test_handle_zfs_root.

The order of parameters to test_handle_zfs_root did not match
the order of the mocks applied.

Thanks to Jason Zions for pointing this out.

2e93cc6... by Tomer Cohen on 2018-11-28

doc: Change dns_nameserver property to dns_nameservers.

According to the examples in the page, v1 network config DNS should
be defined using the dns_nameservers. The singular dns_nameserver is
undefined.

530850f... by Scott Moser on 2018-11-27

OVF: identify label iso9660 filesystems with label 'OVF ENV'.

When deploying an OVA, at least some versions of vmware
attach a cdrom with an ISO9660 filesystem label of 'OVF ENV'.
This was seen on Vmware vCenter Server, 6.0.0, 2776510.

In order to accomplish this we had to change the content of
the DI_ISO9660_DEVS variable to be comma delimited rather
than space delimited.

e9d57b8... by Chad Smith on 2018-11-27

logs: collect-logs ignore instance-data-sensitive.json on non-root user

Since /run/cloud-init/instance-data-sensitive.json is root read-only,
ignore this file if non-root user runs collect-logs.

If --include-userdata is provided on the command line, exit in error
if non-root user attempts this operation.

Lastly, update the __main__ to exit based on return value of main.

LP: #1805201

ef0611a... by Chad Smith on 2018-11-26

net: Ephemeral*Network: add connectivity check via URL

We add a new Optional parameter: connectivity_url
This is used in __enter__ to verify if a connection already exists.
If it does exist, no operations are performed.