Created by Wesley Wiedenmeier and last modified
Get this branch:
bzr branch lp:~wesley-wiedenmeier/curtin/1598310
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

Wesley Wiedenmeier

Recent revisions

403. By Wesley Wiedenmeier

Add test for fallback lsblk entry selection in block.get_blockdev_sector_size

402. By Wesley Wiedenmeier

In block.get_blockdev_sector_size, when falling back to first entry in lsblk
return dict, cast dict_keys object to list before indexing

401. By Wesley Wiedenmeier

Add unittest for block.get_blockdev_sector_size

400. By Wesley Wiedenmeier

in block.get_blockdev_sector_size, it is possible that block._lsblock() will
return multiple results. If this happens, then to find result information,
either choose the result with the correct device_path attribute, or if none
exists, the first result. resolves (lp: 1598310)

399. By Scott Moser

Initial vmtest power8 support and TestSimple test.

This is not completely functional power8 tests, but does allow some
tests to be run on power now. On a xenial ppc64el host, this will work:
 nosetests3 tests/vmtests/test_simple.py

The TestSimple test pushes curtin through its "automatic" installation,
that does not require storage config.

power8 changes:
 - add a TestSimple that tests that curtin correctly installs
   when no storage config is provided (also runs on other arch).
 - tools/launch: generalize console_name (console=) for command line.
 - includes 'launch-by-label' branch (necessary for unstable virtio paths
   on different versions of qemu).

 - cleanups to prep partitioning in code to just be more readable.

tools/xkvm minor improvements:
 - allow passing in 'file=/path/to/file.img' instead of just
 - allow shortened 'fmt=raw' in addition to 'format=raw'.

tools/vmtest-sync-images can now take a release as an argument:
  ./tools/vmtest-sync-images xenial
will sync xenial images and no others.

398. By Scott Moser

tools/launch: boot by root=LABEL=cloudimg-rootfs

We were previously booting with either root=/dev/vda or root=/dev/vda1
based on if the root disk was partitioned or not.

That logic was sort of broken in that it didn't correctly
query the backing device of a qcow2 disk.

What prompted this change though is that using root= seems not reliable.
On power8 kvm guests on 16.04 in current trunk, root=/dev/vda would not
find a filesystem, where the same boot on 15.10 did.

So for now, boot by LABEL=cloudimg-rootfs which is true for all of our

397. By Scott Moser

tools/launch and tools/xkvm: whitespace cleanup and bash -x

remove trailing whitespace and '-x' on shebang line.

396. By Ryan Harper

fix multipath configuration and add multipath tests

Xenial multipath fails without ensuring the multipath/bindings file is written
with whitespace removed; this is triggered on in-target mulitpath versions
>= 1.5.0. This fixes LP:1551937

Add multipath testing via a test-case option, cls.multipath which will
if set to true, duplicate all disks in a test class. This has the effect
of looking exactly like multipath setups where we see the same device
with two paths.

To handle devices with wwn or serial numbers with spaces in them curtin.block
was updated to ensure it supports finding devices via there serial or wwn
attribute. Specifically for serial numbers with spaces, we currently will
escape the spaces to underscores; this is supported by observing the names
that show up in /dev/disk/by-id/* for those devices.

For wwn, /dev/disk/by-id/wwn-$wwn ; curtin resolves the symlink target to
obtain a kernel devname for use with sysfs.

For serial with spaces, curtin attempts to remove whitespace like udev to
find the disk under /dev/disk/by-id/ and determine a devname.

395. By Scott Moser

vmtest: provide info on images used

This does 4 things, all in an effort to show which images are used.
a.) fixes tests/vmtests/image_sync.py to actually use --output-format
    this was in its help, but ignored, now it works as expected.
b.) provide image information at INFO level for each vmtest
    we'll now see a message like:
     Using tempdir: ... , Image: yakkety amd64/hwe-y 20160620
c.) provide image information at start of jenkins-runner
    jenkins-runner will now print:
      Working with images in /tmp/asdf
      precise amd64/hwe-p 20160610.1
      precise amd64/hwe-q 20160610.1
      yakkety amd64/hwe-y 20160620
d.) provide paths to each component of the image at DEBUG level

394. By Ryan Harper

curtin/net: use post-up for interface alias

When network config creates interface ip aliases, there may be a
delay during network bring up due to no hotplug event being generated
for aliased interfaces. This can be addressed by including a post-up
hook on the main interface to call ifup on the aliased interface.

This resolves a cloud-init 120 second timeout on Trusty.

Branch metadata

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