~raharper/curtin:fix/lvm-over-raid

Last commit made on 2018-08-10
Get this branch:
git clone -b fix/lvm-over-raid 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/lvm-over-raid
Repository:
lp:~raharper/curtin

Recent commits

ed603a4... by Ryan Harper

Skip install of known broken scenario.

211e5b6... by Ryan Harper

lvm: add activate_volgroup() method

activate_volgroup issues the vgchange --activate=y
command which will activate any known VolumeGroup and
any LogicalVolume defined within the VolumeGroup

The vgchange command itself handles syncing with udev
so there is no need to issue udevadm settle calls.

The lvm_scan changes which incorporated an automatic
activation are pulled out restoring the previous
behavior of just scanning and updating lvmetad
(if running) and the kernel.

clear-holders will now start a scan and issue
and activate explicity.

c75ce82... by Ryan Harper

Add comments programs used to hide lvm and raid metadata for testing clear-holders

484cc74... by Ryan Harper

Refactor lvm_scan to handle precise/trusty lack of lvmetad

Turns out that while Trusty lvm has support for lvmetad, it's not
packaged. This prevents the pvscan --cache --activate=ay from
working as it does in Xenial and newer. On precise, trusty instead
we run the pvscan and vgscan, and then invoke vgchange --activate=ay
to enable any vgs and lvs the scans found.

Other changes:
- Use release to append vgchange cmd as needed
- Drop release check for use of --cache, param is required if
  it is running
- Update unittest to match change in code

1273e7f... by Ryan Harper

Trusty pvscan only allows --activate with --cache

dc83b72... 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 to lvm_scan
and update the pvscan call to use --activate ay which activates any found
vgs/lvs.

LP: #1783413

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.