Last commit made on 2019-10-11
Get this branch:
git clone -b bug/1847517 https://git.launchpad.net/~harald-jensas/cloud-init
Only Harald Jensås can upload to this branch. If you are Harald Jensås please log in for upload directions.

Branch merges

Branch information


Recent commits

4cd556d... by Harald Jensås

net: handle openstack dhcpv6-stateless configuration

Openstack subnets can be configured to use SLAAC by setting
ipv6_address_mode=dhcpv6-stateless. When this is the case
the sysconfig interface configuration should use
IPV6_AUTOCONF=yes and not set DHCPV6C=yes.

This change sets the subnets type property to the full
network['type'] from openstack metadata.

cloudinit/net/sysconfig.py and cloudinit/net/eni.py
are updated to support new subnet types:
  - 'ipv6_dhcpv6-stateless' => IPV6_AUTOCONF=yes
  - 'ipv6_dhcpv6-stateful' => DHCPV6C=yes

Type 'dhcp6' in sysconfig is kept for backward compatibility
with any implementations that set subnet_type == 'dhcp6'.

LP: #1847517

d3b1c4a... by Adam Dobrawy <email address hidden>

Add RbxCloud datasource

a7d8d03... by Dan Watkins

get_interfaces: don't exclude bridge and bond members

The change that introduced this issue was handling interfaces that are
bonded in the kernel, in a way that doesn't present as "a bond" to
userspace in the normal way. Both members of this "bond" will share a
MAC address, so we filter one of them out to avoid incorrect MAC address
collision warnings.

Unfortunately, the matching condition was too broad, so that change also
affected normal bonds and bridges. This change specifically excludes
bonds and bridges from that determination, to address that regression.

LP: #1846535

5d5a32e... by Conrad Hoffmann <email address hidden>

Add support for Arch Linux in render-cloudcfg

 - Detect Arch Linux and set variant accordingly in `system_info()`
 - Allow setting render-cloudcfg variant parameter to 'arch'
 - Adjust some basic settings for Arch Linux in the cloud.cfg.tmpl

The template might need some additional Arch-specific tweaks in the
future, but at least for now the generated config works and contains
the most relevant modules.

- Sort distro variant lists when adding Arch
- Add debian to known variants in render-cloudcfg

067516d... by Chad Smith

util: json.dumps on python 2.7 will handle UnicodeDecodeError on binary

Since python 2.7 doesn't handle UnicodeDecodeErrors with the default

LP: #1801364

052d655... by Dan Watkins

debian/ubuntu: add missing word to netplan/ENI header

Specifically, add in "reboot" to make it clear what people should expect
when modifying the file.

This also renames the variable to indicate it is used for netplan and
ENI, not just ENI.

LP: #1845669

762f230... by Ryan Harper

ovf: do not generate random instance-id for IMC customization path

Cloud-init will not operate properly if the instance-id value changes
on each boot. This is the source of a number of behavioral bugs filed
against cloud-init with OVF datasource. Instead, use a static instance-id
value, iid-vmware-imc, similar to iid-dsovf.

f80f7f0... by Ryan Harper

sysconfig: only write resolv.conf if network_state has DNS values

If an OS image provided an /etc/resolv.conf file that was not empty
cloud-init would read and re-write it with a cloud-init header even
if no DNS network configuration was provided (e.g. DHCP only).

This can cause problems for some network services which don't
ignore cloud-init's header.

LP: #1843634

0948cdf... by Ryan Harper

sysconfig: use distro variant to check if available

The sysconfig renderer used the distro name directly which mean
some variants of distros were not considered supported. Fix this
by using util.system_info()['variant'] instead. Fix the list of
KNOWN_DISTROS value for redhat -> rhel.

LP: #1843584

66ef979... by Robert Schweikert

systemd/cloud-init.service.tmpl: start after wicked.service

Change the startup order. On SUSE distros cloud-init.service
should start after wicked.service. This reflects the same
start up order other distributions utilize.