curtin:master

Last commit made on 2021-05-10
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

52b9fdd... by Michael Hudson-Doyle on 2021-05-10

block_meta: make preserve: true on a raid in a container work

Pass any supplied container name to raid_verify and on to md_check and
check it against the existing device.

Also tidy up a few other things in the raid verification code path: make
checking functions consistently raise ValueError on failure rather than
returning True / False and have the verification of raid level actually
check the level of the existing array.

This also fixes preserve: true on a raid0 array while we are there --
raid0 arrays do not have degraded or sync_action attributes.

204728a... by Ryan Norwood <email address hidden> on 2021-05-02

Fix NVMe validation for namespaces with UUID

NVMe namespaces are only verified if the wwn comes from either the
NGUID or EUI64. With NVMe 1.3 a third ID, UUID is now[1] supported for a
namespace. If it exists it takes precedence and the wwid in sysfs will
populate with that uuid and use a uuid.XXXXX format, which does not
validate correctly with the filter in curtin.

/sys/devices/virtual/nvme-subsystem/nvme-subsys0/\
nvme0/nvme0n1/wwid:uuid.289acd66-794d-439d-abd0-0396f6382936

1. https://lore.kernel.org/patchwork/patch/808637/

LP: #1925399

def7d5b... by Dan Bungert on 2021-04-30

meta_simple: handle multiple disks in storage config with dd-image

When scanning storage config for the target device to use with dd-image
install stop after finding a disk matching serial and grub_device true.

(Thanks to Ryan Harper and Lee Trager for good discussions and fix
 proposals)

LP: #1925722

d49d35b... by Dan Bungert on 2021-04-15

Use /proc/filesystems to decide passno

The 'nodev' is intended to indicate
"whether the file system is mounted on a block device"
https://red.ht/3toGT5b

Use this info to set nodev items to passno 0, and default to 1 for
non-nodev or if the filesystem isn't present there.
Except that /proc/filesystems doesn't list 'swap' or 'none', so special
case those to passno 0.

LP: #1717584, LP: #1785354

1ff27dd... by Michael Hudson-Doyle on 2021-04-15

block_meta: fix wiping of existing dasd partition

The partition verification code does not need the part_path variable in
this case but the partition wiping code does.

87aa64b... by Michael Hudson-Doyle on 2021-04-13

block_meta: pass --yes to lvcreate alongside --wipesignatures=y

Otherwise it will not actually wipe the signatures it finds.

LP: #1923487

4339a49... by Michael Hudson-Doyle on 2021-03-25

remove 'strict' arguments to block.wipe_volume and block.quick_zero

It was only passed by clear_holders._wipe_superblock and clear_holders
is all best effort anyway.

in particular, this should fix failures seen in subiquity error reports
when wiping very small (<1M) partitions.

LP: #1868177

c204635... by Michael Hudson-Doyle on 2021-03-24

swap: use dd to allocate swapfiles on ext2 and ext3

LP: #1918990

e113b05... by Michael Hudson-Doyle on 2021-03-03

storage_config: return one type: disk action per multipathed disk

Currently extract_storage_config returns one type: disk action
for every member of a multipathed disk and type: partition
actions for each partition of each disk. This works by generating
a type: disk action for each disk and ignoring the block device
data for the /dev/dm-X device for the multipathed disk.

But in groovy+, the udev rule from multipath-tools that has
always attempted to remove the devices nodes for the partitions
of a disk that is a multipath member actually succeeds, and
trying to generate a type: partition action for a partition with
no underlying device node makes things blow up.

Instead, this branch generates type: disk and type: partitions
actions from the /dev/dm-X nodes for the mutipathed disk and its
partitions, and ignores and disks and partitions that are members
of a multipathed disk.

LP: #1893818

f69ae88... by Ryan Harper on 2021-03-02

vmtest/centos: handle different paths to grub config

Centos images used to always have grub installed at
/boot/grub/grub.conf. The most recent build of centos70,
centos70/amd64/20210210_01/root-tgz, now has grub conf located at
/boot/grub2/grub.cfg. This patch checks for either path before
running the sed fixup command.