~smoser/cloud-init:feature/analyze

Last commit made on 2017-08-04
Get this branch:
git clone -b feature/analyze 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:
feature/analyze
Repository:
lp:~smoser/cloud-init

Recent commits

3032fe0... by Scott Moser on 2017-08-04

initial import from rharper's cloudinit-analyze

this works to show usage now:
   python3 -m cloudinit.analyze

5bba5db... by Ryan Harper on 2017-08-01

cc_ntp: fallback on timesyncd configuration if ntp is not installable

Some systems like Ubuntu-Core do not provide an ntp package for
installation but do include systemd-timesyncd (an ntp client).
On such systems cloud-init will generate a timesyncd configuration
using the 'servers' and 'pools' values as ntp hosts for timesyncd to use.

LP: #1686485

9d923c1... by Scott Moser on 2017-08-03

net: Reduce duplicate code. Have get_interfaces_by_mac use get_interfaces.

get_interfaces_by_mac and get_interfaces just looked much alike.
This makes get_interfaces_by_mac call get_interfaces.

9d0fdf1... by Joshua Powers on 2017-07-28

tests: Fix build tree integration tests

The build deb command was no longer working becasue it had
assumed that you were in the root of the cloud-init directory.
This changes where the deb is built and changes how the
dependencies are determined as well as uses the built-in tools
for determining build dependencies.

5610356... by Ryan Harper on 2017-07-31

sysconfig: Dont repeat header when rendering resolv.conf

The sysconfig renderer duplicates the cloud-init header string
when rendering resolv.conf file. This leads to resolv.conf file
growing with every reboot of a system. Fix this by checking for
the header when loading content from existing file.

Update one of the sysconfig unittests with multiple render calls
to simulate the reboot to check that we don't repeat the header.

LP: #1701420

512145c... by Scott Moser on 2017-07-24

archlinux: Fix bug with empty dns, do not render 'lo' devices.

If no dns nameservers were provided a stack trace would occur.
The changes here add some unit tests for the arch distro.

Also avoids rendering an 'lo' interface.

LP: #1663045
LP: #1706593

e586fe3... by Chad Smith on 2017-07-28

cloudinit.net: add initialize_network_device function and tests

This is not yet called, but will be called in a subsequent Ec2-related branch to manually initialize a network interface with the responses using dhcp discovery without any dhcp-script side-effects. The functionality has been tested on Ec2 ubuntu and CentOS vms to ensure that network interface initialization works in both OS-types.

Since there was poor unit test coverage for the cloudinit.net.__init__ module, this branch adds a bunch of coverage to the functions in cloudinit.net.__init. We can also now have unit tests local to the cloudinit modules. The benefits of having unittests under cloudinit module:
 - Proximity of unittest to cloudinit module makes it easier for ongoing devs to know where to augment unit tests. The tests.unittest directory is organizated such that it
 - Allows for 1 to 1 name mapping module -> tests/test_module.py
 - Improved test and module isolation, if we find unit tests have to import from a number of modules besides the module under test, it will better prompt resturcturing of the module.

This also branch touches:
 - tox.ini to run unit tests found in cloudinit as well as include all test-requirements for pylint since we now have unit tests living within cloudinit package
 - setup.py to exclude any test modules under cloudinit when packaging

664a220... by Chad Smith on 2017-07-28

makefile: fix ci-deps-ubuntu target

Remove errant hyphen in read-dependencies --distro ubuntu parameter for ci-deps-ubuntu.
All system packages can now be installed for ubuntu with make ci-deps-ubuntu".
[author: powersj, review:blackboxsw]

80bf98b... by Scott Moser on 2017-07-26

tests: adjust locale integration test to parse default locale.

The locale integration test started failing with commit 0ef61b28.
This was just because the test's expectations on the content/formatting
of /etc/default/locale were too strict. The change here is to read
the file as a set of shell variables and assert that the values are
set correctly.

a31eaa3... by Scott Moser on 2017-07-26

tests: remove 'yakkety' from releases as it is EOL.

This is not strictly necessary, but since yakkety is no longer supported
we will remove it from the releases.yaml file.