~raharper/curtin:fix-missing-zfs-supported-mock

Last commit made on 2018-08-18
Get this branch:
git clone -b fix-missing-zfs-supported-mock https://git.launchpad.net/~raharper/curtin
Only Ryan Harper can upload to this branch. If you are Ryan Harper please log in for upload directions.

Branch merges

Branch information

Name:
fix-missing-zfs-supported-mock
Repository:
lp:~raharper/curtin

Recent commits

df25e6b... by Ryan Harper

Don't allow reads of /proc and modprobe zfs through

New zfs_supported check reads /proc/filesystems to see if
zfs is already available and attempts to modprobe. These things
fail under launchpad sbuilds. Make sure to mock out the calls to
these functions and provide positive values for the failing unittest.

72b02c2... by Ryan Harper

clear-holders: handle missing zpool/zfs tools when wiping

Allow curtin to continue to wipe disks on systems where zfs
kernel module is present but zfsutils-linux is not.

LP: #1782744

6a776e1... by Ryan Harper

clear-holders: rescan for lvm devices after assembling raid arrays

Lvm devices to be found after assembling raid arrays. Add a call after
lvm_scan to activate any discovered vgs and lvs.

LP: #1783413

40d682c... by Ryan Harper

vmtest: enable persistent journal and collect at boot time

Target OSes which use systemd-journald may or maynot enable a
persistent journal on the root filesystem. If the target release
supports journald, issue the commands to create a persistent
journal. During the boot phase, issue commands to flush the
journal and collect (and compress) the journal as the last
script before tar'ing the collect data.

Rename vmtest_pollinate.yaml to vmtest_defaults.yaml. This
file is included in all vmtest runs.

1b387fb... by Scott Moser

Add timing and logging functions.

This adds some decorators and functions to easily time function call.
It was originally done to get an idea on how much time we spend waiting
for udevadm settle, but the code is generally useful.

Note that the 'cmd_install' timer unfortunately doesn't make it
into the saved-off log as the message is appended after it is copied.

1a201e5... by Scott Moser

parse_dpkg_version: support non-numeric in version string.

This fixes parse_dpkg_version for packages with non-numeric (0-9.)
in their versions. It also improves it to work for native packages.
Native packages do not have '-'. Also adds tests of parse_dpkg_version.

LP: #1786795

2b12b8f... by Scott Moser

Add main so that 'python3 -m curtin' does the right thing.

We could (and did) call curtin as 'PYTHON -m curtin.commands.main'.
That is just overly commplicated. This makes it work as
 PYTHON -m curtin

372a3a3... by Scott Moser

Add subcommand 'features'.

The 'features' subcommand just writes the curtin.FEATURES
to standard output, one per line.

1845c22... by Ryan Harper

block: use uuid4 (random) when autogenerating UUIDS for filesystems

The use of uuid1 (timebased) results in UUID values that are visually
hard to distingish. Instead use uuid4 which generates a random
UUID value to provide a more visually distinctive /etc/fstab.

Updated tools/xkvm to add a virtio-rng device when launching VMs

LP: #1785356

9b29cb7... by Scott Moser

vmtests: Increase size of root filesystems.

I believe that this change removes the final 2G root (/) filesystems.
These 2G filesystems were too small to handle upgrades sometimes.
Things that lead to this state:
 a.) we started testing with propsed enabled (and upgrade to it)
 b.) the failing cases here were Trusty HWE tests, which end up
     getting 2 kernels installed and 2 update-initramfs and such.

That worst case scenario led to the following output of apt:
  Need to get 2404 kB of archives.
  After this operation, 10.9 MB of additional disk space will be used.
  Need to get 1467 kB of archives.
  After this operation, 4904 kB of additional disk space will be used.
  Need to get 68.3 MB of archives.
  After this operation, 308 MB of additional disk space will be used.
  Need to get 63.9 MB of archives.
  After this operation, 275 MB of additional disk space will be used.