integ/ostree/initramfs-ostree
Matheus Guilhermino 0d84d0b51a Add Installer and Init Multipath support
Installer:
 - instmpath=0/1 option is provided (default is 0) for when inststx=0 to
   enable a non-StarlingX debug env. By default both INSTSTX and now
   INSTMPATH are enabled by default for StarlingX.
 - The multipath-tools-boot are started to coalesce any multipath
   devices present.
 - Based on the selected install device after kickstart partitioning is
   completed, kpartx (for multipath dm devices) or
   blockdev (HDD/SDD/NVMe devices) is called to re-read partition
   information.

Init:
 - multipath=0/1 option is provided (default is 1) to enable coalescing
   of multipath devices. Can update bootline to disable if desired after
   install if problems are suspected.
   - Wait for the root volume to be located for proper booting
 - Add '-q' option to mdadm call to limit noise produced from not
   finding related devices. This is not supported by StarlingX at this
   time.
 - early_setup moved to after CONSOLE is set to support calls to fatal()

Common:
 - Provide ordered recognition of multipath then LVM devices
   so that non coalesced multipath devices that contain LVM volumes are
   not prematurely recognized. Ordering is as follows
   - Disable LVM devices via the global filter
   - Trigger udev and wait for initial device recognition
   - Activate multipath daemon to coalesce the multipath devices
   - Trigger any udev device changes based on the coalescing
   - Enable the LVM devices via the global_filter and trigger a udev add
     action to add any new device mapper devices

Test Plan:
PASS - AIO-SX: HPE multipath install/bootstrap/unlock
PASS - AIO-SX: Qemu virtual multipath install/bootstrap/unlock
PASS - AIO-DX: Qemu virtual multipath install/bootstrap/unlock
PASS - AIO-DX+: Qemu virtual multipath install/bootstrap/unlock
PASS - 2+2 (controller storage): Qemu virtual multipath
install/bootstrap/unlock
PASS - 2+2+2 (dedicated storage): Qemu virtual multipath
install/bootstrap/unlock
PASS - Add OSD ceph storage configuration (AIO-SX)
PASS - Expand CGTS volume group using extra disk (Partition) (AIO-SX)
PASS - Expand CGTS volume group using extra disk (disk) (AIO-SX)
PASS - Add nova local volume group using extra disk (AIO-SX)
PASS - App pod that alocates and writes into a PVC (AIO-SX)
PASS - Local disk Commands (Disk API) - AIO-SX/DX
- host-disk-list
- host-disk-show
- host-disk-partition-list
- host-disk-partition-show
- host-pv-list
- host-pv-show
- host-stor-list
- host-stor-show
- host-lvg-list
- host-lvg-show
- host-pv-add
PASS - Create nova-local volume group

Regression:
PASS - AIO-SX: Non-multipath install/bootstrap/unlock (NVME)
PASS - AIO-DX: Non-multipath install/bootstrap/unlock (SSD)
PASS - 2+2: Non-multipath install/bootstrap/unlock (SSD)
PASS - 2+2+2 : Non-multipath install/bootstrap/unlock (SSD and HD)

Change-Id: Icde3def99f1b376cb66d5c3a9926ea39dc5e110f
Depends-On: https://review.opendev.org/c/starlingx/tools/+/860590
Story: 2010046
Task: 46693
Co-Authored-By: Robert Church <robert.church@windriver.com>
Signed-off-by: Matheus Guilhermino <matheus.machadoguilhermino@windriver.com>
Signed-off-by: Robert Church <robert.church@windriver.com>
2023-02-14 11:22:29 -03:00
..
debian Add Installer and Init Multipath support 2023-02-14 11:22:29 -03:00