Fix spurious CI job failures around partition images

Cirros partition images have some underlying limitations,
meaning it is not ideal for any step which requires the image
to hae commands executed in it to perform operations, such as
mounting additional filesystems in UEFI mode, or installing
grub in BIOS mode.

This is because cirros images are an unpacked ramdisk, in other
words, the posted disk image *has no* contents on the root
filesystem of the image. While we attempt to unpack[0] this as well,
this can also fail creating false failures resulting in check
jobs failing and then working on recheck.

As the constraint is the same as the BIOS mode check, and there
is no realistic fix, this change removes the boot mode check and
thus always disables partition image testing with tempest *when*
cirros is in use.

note 0: We presently unpack using a virtual machine launch so it
takes place with the same process as when cirros starts, however
linux doesn't always boot, and the tools don't really determine
if that is the case or not, and if we retool it, we should just
move to a direct extraction and image re-pack.

Change-Id: I7687ff1eddb14d22b981860d4c4c9b172bae45b7
This commit is contained in:
Julia Kreger 2024-05-07 09:40:32 -07:00
parent 5717c7e599
commit 8d0b556e3d
1 changed files with 5 additions and 2 deletions

View File

@ -3334,8 +3334,11 @@ function ironic_configure_tempest {
iniset $TEMPEST_CONFIG baremetal partition_image_ref $image_uuid
fi
# Our cirros images cannot do local boot in legacy mode.
if [[ "${IRONIC_PARTITIONED_IMAGE_NAME}" =~ cirros && "${IRONIC_BOOT_MODE}" == "bios" ]]; then
# Our cirros images cannot do local boot and we don't support
# Netboot anymore, but the conditional is still used because
# some boot constraints exist around cirros. i.e. the setting
# likely should just be "don't attempt the partition boot test.
if [[ "${IRONIC_PARTITIONED_IMAGE_NAME}" =~ cirros ]]; then
iniset $TEMPEST_CONFIG baremetal partition_netboot True
else
iniset $TEMPEST_CONFIG baremetal partition_netboot False