curtin:master

Last commit made on 2020-01-27
Get this branch:
git clone -b master https://git.launchpad.net/curtin
Members of curtin developers can upload to this branch. Log in for directions.

Branch merges

Branch information

Name:
master
Repository:
lp:curtin

Recent commits

b475db2... by Ryan Harper 14 hours ago

multipath: handle removal of multipath partitions correctly

Curtin could handle multipath-partition removal if it was given
the device-mapper device (dm-x) however, if it was fed the
underying scsi device (e.g. sda2) this would fail when curtin
would try to clear the partition requesting exclusive access
which it could not obtain due to the device-mapper device.

This branch implements a kernel scsi device lookup to map
sdXN -> dm-N mapping which resolves the issue by allowing
curtin to wipe the dm-X device even if it has been
provided the sdXN device.

Additional Changes
 - Enable dirty_disk mode on multipath test to reproduce
   failure

LP: #1857042

a45a54c... by Ryan Harper on 2020-01-16

vmtests: skip Focal deploying Centos70 ScsiBasic

In Focal, there is a bug (#1859858) in udev which returns a
truncated value for ID_SERIAL on some scsi devices; this does
not break dname rules when the ephemeral environment matches
the target system, however if Focal deploys Bionic or in this
case Centos70, the udev in the target system produces a
different ID_SERIAL value which prevents the dname rules from
matching. Skip this test until we get a udev fix.

c0c986e... by Ryan Harper on 2020-01-15

vmtests: fix network mtu tests, separating ifupdown vs networkd

On networkd based releases, some of the existing ipv6 MTU tests
will not work, by design. The curtin ifupdown helper scripts
installed ensure that the base network interface mtu is always
set correctly; networkd requires an explicit device MTU setting
in addition to an IPV6 MTU value if they are to differ.

- Add a networkd specific mtu test config
- Add a _skip_if_not_ifupdown to avoid tests when on networkd
- Update scripts to capture additional debugging info when on
  networkd

Additional changes needed:
    - Add '---' before adding the service masking to ensure
      we disable snapd during vmtest
    - Refactor journalctl commands to separately sync, flush to
      ensure we capture the compelte journal when we collect
    - allow test class to specify add_repos, system_upgrade and
      upgrade_packages, env still wins if set
    - use systemd from ppa:ddstreet/systemd until ipv6 mtu
      bug is fixed

4fa2d66... by Mike Pontillo <email address hidden> on 2020-01-10

doc: Fix kexec documentation bug.

e91b2df... by Ryan Harper on 2020-01-09

vmtests: Add Focal Fossa

- Add the new release
- Switch some old Cosmic cases to Disco
- Add CentosXXFromFocal relbase
- Bump Skip-by dates for lvmroot, MTU and VLAN issues

1be1cd7... by Lee Trager on 2020-01-09

centos: Add centos/rhel 8 support, enable UEFI Secure Boot

This branch adds support for deploying CentOS and RHEL 8 images. As a
side effect this also enables secure UEFI boot for CentOS 7 when the
grub2-efi-x64 package is installed.

LP: #1788088

f02fd61... by Ryan Harper on 2019-12-18

Bump XFS /boot skip-by date out a while

78678e2... by Ryan Harper on 2019-12-17

vmtest: Fix a missing unset of OUTPUT_FSTAB

The initramfs-only-one branch modified how we use "dirty-disk" mode
which previously had unset environment variables used by curtin,
OUTPUT_FSTAB; this had some undesirable side-effects and instead
we set OUTPUT_FSTAB to a tmpdir and block-meta will now verify
expected environment variables. We missed a variant of the "dirty-disk"
mode used to recreate a specific bcache bug and now we see stack traces
warning about unset OUTPUT_FSTAB in vmtest output:

  raise KeyError("missing environment vars: %s" % missing)

This branch applies the same fix to this scenario.

b022ed4... by Ryan Harper on 2019-12-16

curthooks: handle s390x/aarch64 kernel install hooks

On s390x, and aarch64, the kernel package directly calls
arch specific commands (zipl, flash-kernel) which fail to run
correctly if an initramfs isn't already created in the image. This
broke installation when we attempt to only create the initramfs
once. This branch adds arch support into the code path to divert
not only 'update-initramfs' but the arch specific tools as well and
restores them prior to running the real 'update-initramfs' command.

LP: #1856038

e7952f6... by Ryan Harper on 2019-12-10

clear-holders: handle arbitrary order of devices to clear

At some point, the vmtest for LVM over bcache device list to clear
was sorted in a way that exposed a bug in the level calculation
resulting in not determining that the LVM device must be shutdown
before the bcache layer.

Resolve this by three changes: First we now sort the holders trees so
we have a consistent plan. Second when adding devices to the shutdown
registry, if the device has not been seen we take the max of either the
current level, or the size of the devices holders and lastly, the level
calculation requires recursion to find the full depth rather than just
taking the length of the holders list.