Skip to content

Commit ffb5b74

Browse files
committed
Modifications in Libvirt CR to resolve key error
1 parent 5f6e93e commit ffb5b74

3 files changed

Lines changed: 19 additions & 6 deletions

File tree

pytest_fixtures/component/provision_libvirt.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,8 @@ def module_libvirt_image(module_target_sat, module_cr_libvirt):
3939
def module_libvirt_provisioning_sat(module_provisioning_sat, libvirt):
4040
# Configure Libvirt CR for provisioning
4141
module_provisioning_sat.sat.configure_libvirt_cr(server_fqdn=libvirt.fqdn)
42+
# Restart DHCP service for libvirt provisioning
43+
module_provisioning_sat.sat.execute('systemctl restart dhcpd')
4244
return module_provisioning_sat
4345

4446

tests/foreman/cli/test_computeresource_libvirt.py

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
from robottelo.exceptions import CLIReturnCodeError
4141
from robottelo.hosts import ContentHost
4242
from robottelo.utils.datafactory import parametrized
43+
from robottelo.utils.issue_handlers import is_open
4344

4445

4546
def valid_name_desc_data():
@@ -363,7 +364,7 @@ def test_positive_update_console_password(set_console_password, module_target_sa
363364
@pytest.mark.e2e
364365
@pytest.mark.on_premises_provisioning
365366
@pytest.mark.rhel_ver_match('[7]')
366-
@pytest.mark.parametrize('pxe_loader', ['uefi', 'secureboot'], indirect=True)
367+
@pytest.mark.parametrize('pxe_loader', ['bios', 'uefi', 'secureboot'], indirect=True)
367368
@pytest.mark.parametrize('setting_update', ['destroy_vm_on_host_delete=True'], indirect=True)
368369
@pytest.mark.parametrize('libvirt', ['libvirt9', 'libvirt10'], indirect=True)
369370
def test_positive_provision_end_to_end(
@@ -376,6 +377,7 @@ def test_positive_provision_end_to_end(
376377
module_location,
377378
provisioning_hostgroup,
378379
module_provisioning_rhel_content,
380+
module_restart_dhcpd,
379381
):
380382
"""Provision a host on Libvirt compute resource with the help of hostgroup.
381383
@@ -400,6 +402,10 @@ def test_positive_provision_end_to_end(
400402
401403
:customerscenario: true
402404
"""
405+
# Skip test for UEFI and SecureBoot loaders
406+
if is_open('SAT-41340') and pxe_loader.vm_firmware in ['uefi', 'uefi_secure_boot']:
407+
pytest.skip(f"Test not supported for {pxe_loader.vm_firmware} firmware")
408+
403409
sat = module_libvirt_provisioning_sat.sat
404410
cr_name = gen_string('alpha')
405411
hostname = gen_string('alpha').lower()
@@ -442,12 +448,16 @@ def test_positive_provision_end_to_end(
442448
f'su foreman -s /bin/bash -c "virsh -c {libvirt.url} list --state-running"'
443449
)
444450
assert hostname in result.stdout
445-
446451
wait_for(
447-
lambda: sat.cli.Host.info({'name': hostname})['status']['build-status']
448-
!= 'Pending installation',
452+
lambda: (
453+
sat.cli.Host.info({'name': hostname})
454+
.get('status', {})
455+
.get('build-status', 'Pending installation')
456+
!= 'Pending installation'
457+
),
449458
timeout=1800,
450459
delay=30,
460+
handle_exception=True,
451461
)
452462
host_info = sat.cli.Host.info({'id': host['id']})
453463
assert host_info['status']['build-status'] == 'Installed'

tests/foreman/ui/test_computeresource_libvirt.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@ def test_positive_provision_end_to_end(
131131
provisioning_hostgroup,
132132
module_libvirt_provisioning_sat,
133133
module_provisioning_rhel_content,
134+
module_restart_dhcpd,
134135
):
135136
"""Provision Host on libvirt compute resource, and delete it afterwards
136137
@@ -181,8 +182,8 @@ def test_positive_provision_end_to_end(
181182
)
182183
name = f'{hostname}.{module_libvirt_provisioning_sat.domain.name}'
183184
request.addfinalizer(lambda: sat.provisioning_cleanup(name))
184-
assert session.host_new.search(name)[0]['Name'] == name
185-
185+
result = session.host_new.search(name)[0]
186+
assert result['Name'] == name
186187
# Check on Libvirt, if VM exists
187188
result = sat.execute(
188189
f'su foreman -s /bin/bash -c "virsh -c {libvirt.url} list --state-running"'

0 commit comments

Comments
 (0)