~raharper/curtin:fix/block-discover-raid1-partition

Last commit made on 2019-11-20
Get this branch:
git clone -b fix/block-discover-raid1-partition 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/block-discover-raid1-partition
Repository:
lp:~raharper/curtin

Recent commits

c3d2f6e... by Ryan Harper

Add unittest for probing raid1 partitions

e003ba3... by Ryan Harper

Handle raid1 with partitions in discover

95197ff... by Daniel Fox <email address hidden>

Fix parsing of squashfs: uri prefix for installation sources

util.santitize_source was truncating uris which used the squashfs:
prefix by taking the index of a character rather than a slice starting
at that character. This changes fixes this issue and provides the
intended behaviour and adds a deprecation warning to point to
the supported URI: "squashfs://".

LP: #1851271

48a476b... by Ryan Harper

Release 19.3

Bump the version in curtin/__init__.py to be 19.3.

LP: #1851390

a586514... by Ryan Harper

Update HACKING.rst with Josh Powers contact info.

8e618b3... by Paride Legovini

t/jenkins-runner: replace $EPOCHSECONDS with 'date +%s'

The $EPOCHSECONDS variable has been introduced in Bash 5, and we
need jenkins-runner to stay compatible with Bash 4 for the moment.

1fbf7d8... by Ryan Harper

curthooks: skip setup_kernel_img_conf on eoan and newer

In Eoan, link_in_boot is the default so curtin no longer needs
to generate a kernel-img.conf controlling link_in_boot.

LP: #1847257

d55dbb0... by Ryan Harper

block_meta: use lookup for wwn, fix fallback from wwn, serial, path

NVMe devices may provide a ID_WWN value from udev, but the NVMe rules
do not create a by-id/wwn-$ID_WWN symlink which breaks behavior with
other ID_WWN devices resulting in curtin not finding certain NVMe
devices. Resolve this issue buy using block.lookup_disk on WWN values
as well as serial.

Additional fixes to block_meta.get_path_to_storage_volume:
- get_path_to_storage_volume will try wwn, serial, and ultimately
  path values in order to find the specified disk
- Add os.path.exists check to proposed constructed values, if the
  path is not valid, we continue to use different keys if possible.
- Updated the Exception message to indicate the volume wasn't found
  and emit the config it used.

LP: #1849322

9da90cb... by Ryan Harper

vmtest: Adjust TestScsiBasic to use dnames to find correct disk

The TestScsiBasic test has some assumptions on which SCSI device
will have expected content. On PPC64, the PCI device enumeration
is not as stable as it is on x86 resulting in test failures. This
patch resolves this by leveraging the dname values and looking up
the correct kernel name for a specific target dname.

f4f329c... by Ryan Harper

schema: Add ptable value 'unsupported'

Probert output may include values of partition table 'label'
that curtin does not support. This triggers schema validation
errors for common values, like 'mac' or 'PMBR' and likely
other valid table names but are not something that curtin
can create. Instead of adding more values to the schema, mark
such table types as 'unsupported' allowing the existing table
and partitions to be re-used.

This branch also modifies block_meta disk_handler to not
attempt to validate a preserved partition table if it marked
as 'unsupported'.

LP: #1848535