~zolti/cloud-init:master

Last commit made on 2019-03-04
Get this branch:
git clone -b master https://git.launchpad.net/~zolti/cloud-init
Only zolti can upload to this branch. If you are zolti please log in for upload directions.

Branch merges

Branch information

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

Recent commits

eee0e09... by Ryan Harper

tip-pylint: Fix assignment-from-return-none errors

pylint now complains about assignment of None from a
return of a function call. This does not account for subclassing
so we resolve this issue by removing the assignment in the unittest.

bd35300... by Kurt Stieger

net: append type:dhcp[46] only if dhcp[46] is True in v2 netconfig

When providing netplan configuration to cloud-init, the internal
network state would enable DHCP if the 'dhcp' key was present in
the source config. In netplan, dhcp[46] is a boolean and the
value of the boolean should control whether DHCP is enabled rather
than the presence of the key. This issue leaded to inconsistant
sysconfig/network-scripts on fedora. 'BOOTPROTO' was always 'dhcp',
even if the address config was static.

After this change a dhcp subnet is added only if the 'dhcp' setting
in source cfg dict is True.

LP: #1818032

f2f530e... by Dan Watkins

cc_apt_pipelining: stop disabling pipelining by default

This was introduced due to Ubuntu using S3 mirrors, and S3 having a
buggy pipelining implementation. Those Ubuntu mirrors are no longer in
production and, furthremore, apt has also grown the ability to handle
servers with broken pipelining.

As such, we can stop disabling pipelining, which should result in
improved apt download speeds.

LP: #1794982

1182ad5... by Dan Watkins

tests: fix some slow tests and some leaking state

In test_ds_identify, don't mutate otherwise-static test data. When
running tests in a random order, this was causing failures due to
breaking preconditions for other tests.

In tests/helpers, reset logging level in tearDown. Some of the CLI
tests set the level of the root logger in a way that isn't correctly
reset.

For test_poll_imds_re_dhcp_on_timeout and
test_dhcp_discovery_run_in_sandbox_warns_invalid_pid, mock out
time.sleep; this saves ~11 seconds (or ~40% of previous test time!).

f278a8a... by Dan Watkins

util: don't determine string_types ourselves

six already provides this for us, and we're already paying the cost to
determine it there; no need to do it twice.

f0f0962... by Dan Watkins

cc_rsyslog: Escape possible nested set

Under Python 3.7, we are seeing `FutureWarning: Possible nested set at
position 23`; escaping this bracket causes that warning to disappear.

LP: #1816967

8cfcc28... by Eric Williams

Enable encrypted_data_bag_secret support for Chef

Encrypted data bags require a secrets file to be present to
decrypt, and the location of the file must be configured the
Chef client configuration file, client.rb.

This update enables cloud-init's chef module to update that
setting in client.rb.

LP: #1817082

34f5436... by "Jason Zions (MSFT)" <email address hidden>

azure: Filter list of ssh keys pulled from fabric

The Azure data source is expected to expose a list of
ssh keys for the user-to-be-provisioned in the crawled
metadata. When configured to use the __builtin__ agent
this list is built by the WALinuxAgentShim. The shim
retrieves the full set of certificates and public keys
exposed to the VM from the wireserver, extracts any
ssh keys it can, and returns that list.

This fix reduces that list of ssh keys to just the
ones whose fingerprints appear in the "administrative
user" section of the ovf-env.xml file. The Azure
control plane exposes other ssh keys to the VM for
other reasons, but those should not be added to the
authorized_keys file for the provisioned user.

79d40e6... by Ryan Harper

doc: update merging doc with fixes and some additional details/examples

Update config merging documentation with cloud-config syntax fix. Add an
example showing how to merge two files with runcmd.

e7a8f81... by Chad Smith

tests: integration test failure summary to use traceback if empty error

When integration tests verification fails, the object returned
contains has 'error' and 'traceback' keys. Each key can contain empty
strings. If the simplified 'error' message is empty, fallback and use
the more verbose full 'traceback' text in the failure summary.