lp:~raharper/curtin/trunk.fix-lp1533770

Created by Ryan Harper and last modified
Get this branch:
bzr branch lp:~raharper/curtin/trunk.fix-lp1533770
Only Ryan Harper can upload to this branch. If you are Ryan Harper please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Ryan Harper
Project:
curtin
Status:
Merged

Recent revisions

342. By Ryan Harper

vmtests: basic_network.yaml remove static gateway to avoid race with dhcp

The basic network configuration includes a static gateway
which will race with DHCP; last one to write wins and sometimes
means the network validation won't find the static gateway and fail.
Remove the static gateway in the presence of a network configured
for DHCP.

341. By Scott Moser

vmtest sync: fix pruning of dirs

our pruning code is somewhat simplistic at this point.
We really need to have a better mirror, but for now this fixes an issue.

At some point on our c-i nodes, a mirror included 'di' data, which
creates files in '<mirror>/<release>/<arch>/di'. That directory was
getting counted as a 'image dir'.

This will count image dirs as those that are of format YYYYMMDD[.N]

340. By Scott Moser

tests/vmtests: fix invalid variable and run pylint on tests/vmtests

This fixes a bad variable in tests/vmtests anad also starts to run
pylint with python3 on tests/vmtests. pylint *would* have caught
my bad variable.

Also fix the other complaints from pylint on that code so that
it will successfully run.

339. By Scott Moser

maas2roottar: use --numeric-owner when creating root.tar.gz

We've just been lucky to have not hit issues with this.
Since the image may have different user and group numbers than the host
system, we need to use --numeric-owner with tar.

338. By Scott Moser

Further cleanups on syncing images

This clears up some of the unexpected behavior of syncing images. Much of
the confusion was because sstream-mirror keeps internal information in
.data/ that sstream-query does not read. The result is that:
  sstream-mirror <remote> <local> <filters>
and then a
  sstream-query <local> <other_filters>

would show results as if <other_filters> had been mirrored even though
the files were not present.

We clean that up. Now, get_images will ensure that the data you were
after is present.

Also, we no longer attempt mirror on every setUpClass. That could result
in one Precise test running with one image and the next Precise test
running with another image. This will only run a mirror once for a given
set of filters during a nosetests run.

337. By Ryan Harper

sync-images: auto-convert and prune images

make sync-images will now ensure we invoke convert_image() as needed on
each one and we now have a default of 1 image to keep around. This number
is controlled by an environment variable, IMAGES_TO_KEEP.

336. By Scott Moser

mdadm: fix issues exposed by use via block_meta

Using mdadm via block_meta exposed a few issues.
 - block_meta calls block.md_check, this should be mdadm.md_check
 - mdadm.sysfs_read_attr had thinko in check if it should attempt to read
   an attribute and avoiding reading files
 - mdadm.sysfs_read_attr should use util.load_file
 - ensure all entrypoints to mdadm code check that device names are device
   paths.

335. By Scott Moser

add running of pylint for python27 and python34

This adds the running of pylint in '--errors-only' mode for both python27
and python34. pylint is very verbose, but in --errors-only mode, it
will catch bad many errors that would not be caught by flake8 without
unnecessary noise.

It finds a couple legitimate issues, and I've included fixes here for
those.
There is one work around for an issue i opened at
 https://github.com/PyCQA/pylint/issues/769

334. By Scott Moser

initial fix for reading skew_data

I picked these from cloud-init revno 1147 that made similar changes. One
thing I don't yet have here is the retries that went in there.
Essentially you have to retry to put the skew in place. In cases where
MAAS is running curtin, cloud-init will have already done that for us
and we'll just read the offset from skew_data_file.

So this should be sufficient for MAAS, which is really the only place
that OAuth is currently used.

There is actually one other set of changes that i'd like to get.
Currently we set the oauth skew, and then use it, but if something
(systemd-timed) updated the clock during these things happening then our
skew could be come wrong. This is described more in bug 1531233.

333. By Scott Moser

support bcache installation on precise

We can now do bcache installations on precise with the hwe-t kernel.

 - list bcache-tools package as a dependency on precise
   Bug 1449099 covered SRU of bcache-tools to precise.
   bcache-tools is now available in precise-updates.
 - Bug 1513176 added bcache to the initramfs provided for maas images.

I've added a simple bcache installation test here and enabled it
for trusty and for xenial.

It is not enabled for precise because we do not have ability
to test hwe kernels yet.

Also, fix a bug in assumption that the id of a bcache device was the
kernel name for that. The bug was exposed in this bcache_basic.yaml
config.

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.

Subscribers