Skip to content

Commit 01477e2

Browse files
archanaserverweb-flow
authored andcommitted
Fix Discovery provisioning tests (#20638)
* Fix Discovery provisioning tests * Apply SAT-33477 workaround to UI tests (cherry picked from commit 9ff92d0)
1 parent d799555 commit 01477e2

3 files changed

Lines changed: 48 additions & 12 deletions

File tree

pytest_fixtures/component/provision_pxe.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,10 @@ def module_provisioning_sat(
211211
remote_execution_proxy=[module_provisioning_capsule.id],
212212
domain=[domain.id],
213213
).create()
214+
if provisioning_type == 'discovery':
215+
for host in sat.api.DiscoveredHost().search():
216+
host.delete()
217+
214218
if sat.network_type == NetworkType.IPV4:
215219
assert sat.execute('cat /dev/null > /var/lib/dhcpd/dhcpd.leases').status == 0
216220
assert sat.execute('systemctl restart dhcpd').status == 0

tests/foreman/api/test_discoveredhost.py

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -436,10 +436,6 @@ def test_positive_reboot_all_pxe_hosts(
436436
)
437437

438438
discovered_host = sat.api.DiscoveredHost().search(query={'mac': mac})[0]
439-
discovered_host.hostgroup = provisioning_hostgroup
440-
discovered_host.location = provisioning_hostgroup.location[0]
441-
discovered_host.organization = provisioning_hostgroup.organization[0]
442-
discovered_host.build = True
443439
result = sat.api.DiscoveredHost(id=discovered_host.id).reboot_all()
444440
assert 'Unable to perform reboot' not in result
445441

tests/foreman/ui/test_discoveredhost.py

Lines changed: 44 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -169,10 +169,28 @@ def test_positive_custom_provision_pxe_host(
169169
delay=20,
170170
)
171171
discovered_host = sat.api.DiscoveredHost().search(query={'mac': mac})[0]
172-
discovered_host.hostgroup = provisioning_hostgroup
173-
discovered_host.location = provisioning_hostgroup.location[0]
174-
discovered_host.organization = provisioning_hostgroup.organization[0]
175-
discovered_host.build = True
172+
if is_open('SAT-33477') and (
173+
sat.cli.DiscoveredHost.list(
174+
{
175+
'organization-id': module_org.id,
176+
'location-id': module_location.id,
177+
}
178+
)
179+
== []
180+
):
181+
with sat.ui_session() as temp_session:
182+
temp_session.organization.select(org_name='Any organization')
183+
temp_session.location.select(loc_name='Any location')
184+
temp_session.discoveredhosts.apply_action(
185+
'Assign Organization',
186+
discovered_host.name,
187+
values=dict(organization=module_org.name),
188+
)
189+
temp_session.discoveredhosts.apply_action(
190+
'Assign Location',
191+
discovered_host.name,
192+
values=dict(location=module_location.name),
193+
)
176194

177195
discovered_host_name = discovered_host.name
178196
domain_name = provisioning_hostgroup.domain.read().name
@@ -323,10 +341,28 @@ def test_positive_auto_provision_host_with_rule(
323341
delay=20,
324342
)
325343
discovered_host = sat.api.DiscoveredHost().search(query={'mac': mac})[0]
326-
discovered_host.hostgroup = provisioning_hostgroup
327-
discovered_host.location = provisioning_hostgroup.location[0]
328-
discovered_host.organization = provisioning_hostgroup.organization[0]
329-
discovered_host.build = True
344+
if is_open('SAT-33477') and (
345+
sat.cli.DiscoveredHost.list(
346+
{
347+
'organization-id': module_org.id,
348+
'location-id': module_location.id,
349+
}
350+
)
351+
== []
352+
):
353+
with sat.ui_session() as temp_session:
354+
temp_session.organization.select(org_name='Any organization')
355+
temp_session.location.select(loc_name='Any location')
356+
temp_session.discoveredhosts.apply_action(
357+
'Assign Organization',
358+
discovered_host.name,
359+
values=dict(organization=module_org.name),
360+
)
361+
temp_session.discoveredhosts.apply_action(
362+
'Assign Location',
363+
discovered_host.name,
364+
values=dict(location=module_location.name),
365+
)
330366

331367
discovered_host_name = discovered_host.name
332368
domain_name = provisioning_hostgroup.domain.read().name

0 commit comments

Comments
 (0)