Laszlo Ersek
2023-May-19 15:55 UTC
[Libguestfs] [guestfs-tools PATCH 0/3] test "/dev/mapper/VG-LV" with "--key"
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2168506 This small set covers the new /dev/mapper/VG-LV "--key" ID format in the LUKS-on-LVM virt-inspector test. Thanks, Laszlo Laszlo Ersek (3): update common submodule inspector: rename VGs and LVs in LUKS-on-LVM test inspector: test /dev/mapper/VG-LV translation in LUKS-on-LVM test common | 2 +- inspector/test-virt-inspector-luks-on-lvm.sh | 22 ++++++++++---- test-data/phony-guests/make-fedora-img.pl | 30 +++++++++++--------- 3 files changed, 35 insertions(+), 19 deletions(-) base-commit: 67647b883e1373623212d6b9fae5098135fd5efe
Laszlo Ersek
2023-May-19 15:55 UTC
[Libguestfs] [guestfs-tools PATCH 1/3] update common submodule
Laszlo Ersek (2): options/keys: key_store_import_key(): un-constify "key" parameter options/keys: introduce unescape_device_mapper_lvm() Richard W.M. Jones (1): mlcustomize/SELinux_relabel.ml: Use Array.mem Roman Kagan (1): mlcustomize: skip SELinux relabeling if it's disabled Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2168506 Signed-off-by: Laszlo Ersek <lersek at redhat.com> --- common | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common b/common index 70c10a079a30..b636c3f20a1b 160000 --- a/common +++ b/common @@ -1 +1 @@ -Subproject commit 70c10a079a30ff3a84f38596d725a6c5d46e2470 +Subproject commit b636c3f20a1b8d1a6a75f33dcb1fd931c95c5e00
Laszlo Ersek
2023-May-19 15:55 UTC
[Libguestfs] [guestfs-tools PATCH 2/3] inspector: rename VGs and LVs in LUKS-on-LVM test
In preparation for a subsequent patch, rename "VG" to "Volume-Group", and "LV<n>" to "Logical-Volume-<n>", in the LUKS-on-LVM virt-inspector test. Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2168506 Signed-off-by: Laszlo Ersek <lersek at redhat.com> --- inspector/test-virt-inspector-luks-on-lvm.sh | 11 +++---- test-data/phony-guests/make-fedora-img.pl | 30 +++++++++++--------- 2 files changed, 23 insertions(+), 18 deletions(-) diff --git a/inspector/test-virt-inspector-luks-on-lvm.sh b/inspector/test-virt-inspector-luks-on-lvm.sh index b9989433da85..35454e630d3d 100755 --- a/inspector/test-virt-inspector-luks-on-lvm.sh +++ b/inspector/test-virt-inspector-luks-on-lvm.sh @@ -36,14 +36,15 @@ if [ "$(guestfish version | grep minor | awk '{print $2}')" -lt 47 ]; then fi f=../test-data/phony-guests/fedora-luks-on-lvm.img -keys=(--key /dev/VG/Root:key:FEDORA-Root - --key /dev/VG/LV1:key:FEDORA-LV1 - --key /dev/VG/LV2:key:FEDORA-LV2 - --key /dev/VG/LV3:key:FEDORA-LV3) +keys=(--key /dev/Volume-Group/Root:key:FEDORA-Root + --key /dev/Volume-Group/Logical-Volume-1:key:FEDORA-LV1 + --key /dev/Volume-Group/Logical-Volume-2:key:FEDORA-LV2 + --key /dev/Volume-Group/Logical-Volume-3:key:FEDORA-LV3) # Ignore zero-sized file. if [ -s "$f" ]; then - uuid_root=$(guestfish --ro -i -a "$f" "${keys[@]}" luks-uuid /dev/VG/Root) + uuid_root=$(guestfish --ro -i -a "$f" "${keys[@]}" \ + luks-uuid /dev/Volume-Group/Root) b=$(basename "$f") $VG virt-inspector "${keys[@]}" --format=raw -a "$f" > "actual-$b.xml" # Check the generated output validate the schema. diff --git a/test-data/phony-guests/make-fedora-img.pl b/test-data/phony-guests/make-fedora-img.pl index ffa7e0f100bf..9721ce4a9dc9 100755 --- a/test-data/phony-guests/make-fedora-img.pl +++ b/test-data/phony-guests/make-fedora-img.pl @@ -224,23 +224,27 @@ EOF # Create the Volume Group on /dev/sda2. $g->pvcreate ('/dev/sda2'); - $g->vgcreate ('VG', ['/dev/sda2']); - $g->lvcreate ('Root', 'VG', 256); - $g->lvcreate ('LV1', 'VG', 32); - $g->lvcreate ('LV2', 'VG', 32); - $g->lvcreate ('LV3', 'VG', 64); + $g->vgcreate ('Volume-Group', ['/dev/sda2']); + $g->lvcreate ('Root', 'Volume-Group', 256); + $g->lvcreate ('Logical-Volume-1', 'Volume-Group', 32); + $g->lvcreate ('Logical-Volume-2', 'Volume-Group', 32); + $g->lvcreate ('Logical-Volume-3', 'Volume-Group', 64); # Format each Logical Group as a LUKS device, with a different password. - $g->luks_format ('/dev/VG/Root', 'FEDORA-Root', 0); - $g->luks_format ('/dev/VG/LV1', 'FEDORA-LV1', 0); - $g->luks_format ('/dev/VG/LV2', 'FEDORA-LV2', 0); - $g->luks_format ('/dev/VG/LV3', 'FEDORA-LV3', 0); + $g->luks_format ('/dev/Volume-Group/Root', 'FEDORA-Root', 0); + $g->luks_format ('/dev/Volume-Group/Logical-Volume-1', 'FEDORA-LV1', 0); + $g->luks_format ('/dev/Volume-Group/Logical-Volume-2', 'FEDORA-LV2', 0); + $g->luks_format ('/dev/Volume-Group/Logical-Volume-3', 'FEDORA-LV3', 0); # Open the LUKS devices. This creates nodes like /dev/mapper/*-luks. - $g->cryptsetup_open ('/dev/VG/Root', 'FEDORA-Root', 'Root-luks'); - $g->cryptsetup_open ('/dev/VG/LV1', 'FEDORA-LV1', 'LV1-luks'); - $g->cryptsetup_open ('/dev/VG/LV2', 'FEDORA-LV2', 'LV2-luks'); - $g->cryptsetup_open ('/dev/VG/LV3', 'FEDORA-LV3', 'LV3-luks'); + $g->cryptsetup_open ('/dev/Volume-Group/Root', + 'FEDORA-Root', 'Root-luks'); + $g->cryptsetup_open ('/dev/Volume-Group/Logical-Volume-1', + 'FEDORA-LV1', 'LV1-luks'); + $g->cryptsetup_open ('/dev/Volume-Group/Logical-Volume-2', + 'FEDORA-LV2', 'LV2-luks'); + $g->cryptsetup_open ('/dev/Volume-Group/Logical-Volume-3', + 'FEDORA-LV3', 'LV3-luks'); # Phony root filesystem. $g->mkfs ('ext2', '/dev/mapper/Root-luks', blocksize => 4096, label => 'ROOT');
Laszlo Ersek
2023-May-19 15:55 UTC
[Libguestfs] [guestfs-tools PATCH 3/3] inspector: test /dev/mapper/VG-LV translation in LUKS-on-LVM test
In the LUKS-on-LVM virt-inspector test, run virt-inspector one more time, now with such "--key" options that exercise the recent "/dev/mapper/VG-LV" -> "/dev/VG/LV" translation (unescaping) from libguestfs-common. Verify that virt-inspector outputs the same XML as it did when we passed it the "/dev/VG/LV" format "--key" options. Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2168506 Signed-off-by: Laszlo Ersek <lersek at redhat.com> --- Notes: context:-U6 inspector/test-virt-inspector-luks-on-lvm.sh | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/inspector/test-virt-inspector-luks-on-lvm.sh b/inspector/test-virt-inspector-luks-on-lvm.sh index 35454e630d3d..13b25e338a87 100755 --- a/inspector/test-virt-inspector-luks-on-lvm.sh +++ b/inspector/test-virt-inspector-luks-on-lvm.sh @@ -38,19 +38,30 @@ fi f=../test-data/phony-guests/fedora-luks-on-lvm.img keys=(--key /dev/Volume-Group/Root:key:FEDORA-Root --key /dev/Volume-Group/Logical-Volume-1:key:FEDORA-LV1 --key /dev/Volume-Group/Logical-Volume-2:key:FEDORA-LV2 --key /dev/Volume-Group/Logical-Volume-3:key:FEDORA-LV3) +keys_mapper=(--key /dev/mapper/Volume--Group-Root:key:FEDORA-Root + --key /dev/mapper/Volume--Group-Logical--Volume--1:key:FEDORA-LV1 + --key /dev/mapper/Volume--Group-Logical--Volume--2:key:FEDORA-LV2 + --key /dev/mapper/Volume--Group-Logical--Volume--3:key:FEDORA-LV3) + # Ignore zero-sized file. if [ -s "$f" ]; then uuid_root=$(guestfish --ro -i -a "$f" "${keys[@]}" \ luks-uuid /dev/Volume-Group/Root) b=$(basename "$f") $VG virt-inspector "${keys[@]}" --format=raw -a "$f" > "actual-$b.xml" # Check the generated output validate the schema. $XMLLINT --noout --relaxng "$srcdir/virt-inspector.rng" "actual-$b.xml" # This 'diff' command will fail (because of -e option) if there # are any differences. sed -e "s/ROOTUUID/$uuid_root/" < "$srcdir/expected-$b.xml" \ | diff -u - "actual-$b.xml" + + # Re-run virt-inspector with keys using the /dev/mapper/VG-LV format; verify + # only that the XML output matches the output from the previous + # virt-inspector invocation (which used the /dev/VG/LV format). + $VG virt-inspector "${keys_mapper[@]}" --format=raw -a "$f" \ + | diff -u "actual-$b.xml" - fi
Reasonably Related Threads
- [libguestfs PATCH 0/3] test "/dev/mapper/VG-LV" with "--key"
- [libguestfs PATCH 3/3] LUKS-on-LVM inspection test: test /dev/mapper/VG-LV translation
- [PATCH] tests: luks: Test the --key options.
- [PATCH 0/4] fish: Allow the glob command to expand device patterns (RHBZ#635971).
- Advice on setting up Raid and LVM