lp:~wesley-wiedenmeier/curtin/1588875

Created by Wesley Wiedenmeier and last modified
Get this branch:
bzr branch lp:~wesley-wiedenmeier/curtin/1588875
Only Wesley Wiedenmeier can upload to this branch. If you are Wesley Wiedenmeier please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Wesley Wiedenmeier
Project:
curtin
Status:
Development

Recent revisions

395. By Wesley Wiedenmeier

Merge from trunk

394. By Wesley Wiedenmeier

Fix trusty pep8 formatting issue

393. By Wesley Wiedenmeier

In block_meta.clear_holders, to handle holders that may have been shut down
since the holders list was retrieved, do not try to catch io errors, check
os.path.exists before operating on the holding device. this ensures that
the clear_holers function will work on python2 or python3, as the way file not
found exceptions were caught for python3 did not work on python2. This resolves
(LP: 1588875).

392. By Ryan Harper

reporting: set webhook handler level to DEBUG, no filtering

The webhook handler in curtin reporting included a default level
of INFO and included a event filter which would not report events
that were of lower importance than what was set. The result was
for unconfigured WebHook handlers, some of the expected messages
including post_files used by maas to collect the curtin install
log were no longer sent.

This patch sets WebHookHandler level to DEBUG, the same level set for
LogHandler and PrintHandler, further we remove the event filtering.
The events themselves include the level value and the event collector
can apply their own filtering as needed. Along with the changes we
clean up some comments and include a new unittest which specifically
tests that a FinishReportingEvent with post_files is posted by the
WebHookHandler.

391. By Scott Moser

improve net-meta network configuration

when network configuration is not provided 'net-meta' would write
a very simplistic /etc/network/interfaces file for each of the
devices that were brought up in install environment. This had the following
issues
a.) it did not disable cloud-init networking
b.) it did not account for naming of devices (causing issue if
    devices changed names between install and boot environment).
c.) did not include interfaces.d as ideally it would.

Now instead, we create a network config and let the appropriate renderer
do the work.

390. By Ryan Harper

curtin/net: fix inet value for subnets, don't add interface attributes to alias

Apply two separate fixes for configuring bonding with ip aliases.

Curtin re-used the interface's inet value for each subnet that might
be configured. In the case where the configuration included an ipv4
address after an ipv6 one resulted in emitting 'inet6' for ipv4 address
which is not correct. Resolve this issue by calculating the inet
value independent of the current status of the iface, using the subnet
config instead.

When rendering a network_config which includes ip alias interfaces
do not emit any attributes, like MTU, or bond/bridge options Including
these values is almost always wrong or will result in confusing
behavior on the target system.

389. By Ryan Harper

Detect and remove legacy /etc/network/interfaces.d/eth0.cfg from target

Prior to Xenial release, Ubuntu Cloud images included a default network
configuration in /etc/network/interfaces.d/eth0.conf. The presence of
this legacy configuration file can cause a delay during boot when cloud-
init is expecting a non-existent interface to become available. curtin
installations handle configuring networking in the target installed
system subsequently the embedded configuration is not needed.

This patch reuses most of cloud-init's version of detecting and
examining the legacy config, confirming if the contents are what is
expected. Upon finding expected content the file will be removed,
otherwise it will remain.

Additional changes to vmtest and unittest were added to remove the
reliance on fallback nic naming (eth0); we always use non-kernel names
in our configuration now. An additional common test has been added to
check that in all cases we ensure we remove the embedded config.

388. By Ryan Harper

vmtests: Add Xenial to LVM test bucket.

387. By Scott Moser

fix timestamp in reporting events.

If no timestamp was passed into a ReportingEvent, then the default was
used. That default was 'time.time()' which was evaluated once only at
import time.

386. By Scott Moser

debian/control: add bcache-tools dependency

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:~curtin-dev/curtin/trunk
This branch contains Public information 
Everyone can see this information.