Skip to content

Commit

Permalink
Adding the external kola test for luks + multipath case
Browse files Browse the repository at this point in the history
Signed-off-by: Poorna Gottimukkula <[email protected]>
  • Loading branch information
Poorna-Gottimukkula1 committed Dec 2, 2024
1 parent 82541dc commit 67b6c23
Show file tree
Hide file tree
Showing 4 changed files with 44 additions and 4 deletions.
13 changes: 9 additions & 4 deletions tests/kola/root-reprovision/luks/data/luks-test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,17 @@ if ! grep -q no_read_workqueue <<< "${table}"; then
fi
ok "discard and custom option enabled for root LUKS"

# while we're here, sanity-check that boot is mounted by UUID
if ! systemctl cat boot.mount | grep -q What=/dev/disk/by-uuid; then
# while we're here, sanity-check that boot is mounted by UUID or by multipath label
if grep -q "rd.multipath=default" /proc/cmdline; then
expected_what=/dev/disk/by-label/dm-mpath-boot
else
expected_what=/dev/disk/by-uuid
fi
if ! systemctl cat boot.mount | grep -q What="${expected_what}"; then
systemctl cat boot.mount
fatal "boot mounted not by UUID"
fatal "boot mounted not by ${expected_what}"
fi
ok "boot mounted by UUID"
ok "boot mounted by ${expected_what}"

case "${AUTOPKGTEST_REBOOT_MARK:-}" in
"")
Expand Down
1 change: 1 addition & 0 deletions tests/kola/root-reprovision/luks/multipath/config.ign
1 change: 1 addition & 0 deletions tests/kola/root-reprovision/luks/multipath/data
33 changes: 33 additions & 0 deletions tests/kola/root-reprovision/luks/multipath/test.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#!/bin/bash
## kola:
## # This test reprovisions the rootfs.
## tags: "reprovision"
## # This uses appendKernelArgs and multipath, which is QEMU only
## platforms: qemu
## # Root reprovisioning requires at least 4GiB of memory.
## minMemory: 4096
## # A TPM backend device is not available on s390x to suport TPM.
## architectures: "! s390x"
## # This test includes a lot of disk I/O and needs a higher
## # timeout value than the default.
## timeoutMin: 15
## description: Verify that LUKS on a mpath disks works.
## primaryDisk: ":mpath"
## appendKernelArgs: "rd.multipath=default"

set -xeuo pipefail

# shellcheck disable=SC1091
. "$KOLA_EXT_DATA/commonlib.sh"

# Check if the child device is part of the parent device
srcdev=$(findmnt -nvr /sysroot -o SOURCE)
parent_device="/dev/mapper/mpatha"

if ! lsblk -pno NAME "$parent_device" | grep -qw "$srcdev"; then
fatal "$srcdev is NOT a child of $parent_device."
fi
ok "$srcdev device is part of the parent $parent_device device"

# run the rest of the tests
. $KOLA_EXT_DATA/luks-test.sh

0 comments on commit 67b6c23

Please sign in to comment.