4 Commits

Author SHA1 Message Date
Robert Church
3e7aefdb4d puppet-lvm: Handle multipath persistent device support
For HDD/SSD and NVMe disks we provide 'by-path' values which correspond
to physical locations residing within a specific host (i.e. controller
pci slot location). For multipath devices we will use by-id/wwn values
to uniquely identify a persistent disk which will have multiple devices
that coalesce into a single multipath device.

This change will match physical volumes provided to the module in both
/dev/disk/by-path and /dev/disk/by-id/wwn-* patterns. This aligns with
the hiera data generated from the system inventory

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
PASS - Local disk Commands on AIO-DX after swact

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)
PASS - Distributed cloud: Non-multipath install/bootstrap/unlock

Change-Id: I99cfa858ed6c1e410ceafd6ad7713ad7d6692baf
Depends-On: https://review.opendev.org/c/starlingx/tools/+/860590
Story: 2010046
Task: 47200
Signed-off-by: Robert Church <robert.church@windriver.com>
2023-02-13 16:24:39 -03:00
Robert Church
ea1d81735d Debian: Fix Ruby csv.to_a.map parsing behavior
The output of "pvs -o pv_name,vg_name,lv_name --separator ','" is the
same under CentOS and Debian. This output is fed to the csv.to_a.map
function which produces a slightly different hash.

Under Centos ruby (2.0.0):
  {:_pv=>"  /dev/sda5", :vg=>"cgts-vg", :lv=>"log-lv"}

Under Debian ruby (2.7.4):
  {:pv=>"  /dev/sda7", :vg=>"cgts-vg", :lv=>"log-lv"}

The '_pv' hash key is invalid under Debian and results in:
  undefined method `strip' for nil:NilClass (NoMethodError)

This patch corrects the variable reference

Change-Id: I70033adfff4b551770e9b5026ed93c98949f3689
Story: 2009964
Task: 45101
Signed-off-by: Robert Church <robert.church@windriver.com>
2022-04-19 15:21:40 -04:00
Fabricio Henrique Ramos
56ad0b5bf0 Debian: Fix puppet-lvm re-install issues
There is an issue on Debian iso when re-installing which halts the
bootstrap with the error:

Failed to wipe signatures on logical volume cgts-vg/pgsql-lv.
Aborting. Failed to wipe start of new LV.

This commit fixes this issue.

Test Plan:
Debian:
PASS: Build package
PASS: Build image
PASS: Install controller
PASS: Re-install controller
PASS: Controller unlocked/enabled/available

Story: 2009101
Task: 44883

Signed-off-by: Fabricio Henrique Ramos <fabriciohenrique.ramos@windriver.com>
Change-Id: Ibd10aacda1deeff9415fd556d12143a1598d3559
2022-04-05 00:00:06 +00:00
Charles Short
bcefa6b6b9 Add puppet-lvm debian package
Add packaging infrastructure to build the puppetlabs-lvm
puppet module.

Ported all pactches from Centos to Debian.

Story: 2009101
Task: 43398

Signed-off-by: Charles Short <charles.short@windriver.com>
Change-Id: I767b18a68f8721ec7f932597cf3d46a9bdd5baef
2021-10-25 11:41:06 -04:00