Add test support for bochs display device

Add test coverage for bochs display device [1]. Bochs is considered a
safe and simplified alternative to use over VGA when UEFI is enabled.
Test creates an image with firmware type of UEFI and video model of
bochs. Boots guest and confirms the model is present.

[1] https://blueprints.launchpad.net/nova/+spec/add-bochs-display-device

Change-Id: I85f6fdda6a1c1042de2870a9d9f13f4cc6b32974
This commit is contained in:
James Parker 2023-10-26 13:27:44 -04:00 committed by Artom Lifshitz
parent 9d66d41682
commit a291832963
4 changed files with 19 additions and 0 deletions

View File

@ -31,6 +31,7 @@ function configure {
iniset $TEMPEST_CONFIG compute-feature-enabled virtio_rng "$COMPUTE_FEATURE_VIRTIO_RNG"
iniset $TEMPEST_CONFIG compute-feature-enabled rbd_download "$COMPUTE_FEATURE_RBD_DOWNLOAD"
iniset $TEMPEST_CONFIG compute-feature-enabled uefi_secure_boot "$COMPUTE_FEATURE_UEFI_SECURE_BOOT"
iniset $TEMPEST_CONFIG compute-feature-enabled bochs_display_support "$COMPUTE_FEATURE_BOCHS_DISPLAY"
iniset $TEMPEST_CONFIG compute-feature-enabled vtpm_device_supported "$COMPUTE_FEATURE_VTPM_ENABLED"
iniset $TEMPEST_CONFIG compute-feature-enabled live_migrate_back_and_forth "$COMPUTE_FEATURE_LIVE_MIGRATE_BACK_AND_FORTH"

View File

@ -15,5 +15,6 @@ WHITEBOX_SHARED_CPUS_PER_NUMA=${WHITEBOX_SHARED_CPUS_PER_NUMA:-2}
COMPUTE_FEATURE_VIRTIO_RNG=${COMPUTE_FEATURE_VIRTIO_RNG:-'True'}
COMPUTE_FEATURE_RBD_DOWNLOAD=${COMPUTE_FEATURE_RBD_DOWNLOAD:-'False'}
COMPUTE_FEATURE_UEFI_SECURE_BOOT=${COMPUTE_FEATURE_UEFI_SECURE_BOOT:-'True'}
COMPUTE_FEATURE_BOCHS_DISPLAY=${COMPUTE_FEATURE_BOCHS_DISPLAY:-'True'}
COMPUTE_FEATURE_VTPM_ENABLED=${COMPUTE_FEATURE_VTPM_ENABLED:-'True'}
COMPUTE_FEATURE_LIVE_MIGRATE_BACK_AND_FORTH=${COMPUTE_FEATURE_LIVE_MIGRATE_BACK_AND_FORTH:-'True'}

View File

@ -73,3 +73,17 @@ class HwVideoModelTest(base.BaseWhiteboxComputeTest):
expected_video_model = CONF.whitebox.default_video_model
server = self.create_test_server(wait_until='ACTIVE')
self._assert_hw_video_type(server, expected_video_model)
@testtools.skipUnless(CONF.compute_feature_enabled.bochs_display_support,
'Requires expected default video model')
@testtools.skipUnless(CONF.compute_feature_enabled.uefi_boot,
'Requires support of uefi boot')
def test_bochs_display_device(self):
image_properties = {'hw_firmware_type': 'uefi',
'hw_machine_type': 'q35',
'hw_video_model': 'bochs'}
uefi_image_id = self.copy_default_image(**image_properties)
server = self.create_test_server(
image_id=uefi_image_id, wait_until='ACTIVE')
self._assert_hw_video_type(server, 'bochs')

View File

@ -322,4 +322,7 @@ compute_features_group_opts = [
'default value of [DEFAULT]state_path in the nova-compute'
'config, then [whitebox-nova-compute]state_path also '
'needs to be configured'),
cfg.BoolOpt('bochs_display_support',
default=False,
help="Guests support bochs display device"),
]