Merge "Test cases for iLO drivers in standalone ironic"

This commit is contained in:
Zuul 2018-09-09 15:13:34 +00:00 committed by Gerrit Code Review
commit aed0be97c2
3 changed files with 114 additions and 0 deletions

View File

@ -129,6 +129,9 @@ BaremetalGroup = [
cfg.ListOpt('enabled_rescue_interfaces',
default=['no-rescue'],
help="List of Ironic enabled rescue interfaces."),
cfg.ListOpt('enabled_boot_interfaces',
default=['fake', 'pxe'],
help="List of Ironic enabled boot interfaces."),
cfg.StrOpt('default_rescue_interface',
help="Ironic default rescue interface."),
cfg.IntOpt('adjusted_root_disk_size_gb',

View File

@ -418,6 +418,12 @@ class BaremetalStandaloneScenarioTest(BaremetalStandaloneManager):
# been set via a different test).
rescue_interface = None
# The boot interface to use by the HW type. The boot interface of the
# node used in the test will be set to this value. If set to None, the
# node will retain its existing boot_interface value (which may have been
# set via a different test).
boot_interface = None
# Boolean value specify if image is wholedisk or not.
wholedisk_image = None
@ -463,6 +469,13 @@ class BaremetalStandaloneScenarioTest(BaremetalStandaloneManager):
"in the list of enabled rescue interfaces %(enabled)s" % {
'iface': cls.rescue_interface,
'enabled': CONF.baremetal.enabled_rescue_interfaces})
if (cls.boot_interface and cls.boot_interface not in
CONF.baremetal.enabled_boot_interfaces):
raise cls.skipException(
"Boot interface %(iface)s required by test is not "
"in the list of enabled boot interfaces %(enabled)s" % {
'iface': cls.boot_interface,
'enabled': CONF.baremetal.enabled_boot_interfaces})
if not cls.wholedisk_image and CONF.baremetal.use_provision_network:
raise cls.skipException(
'Partitioned images are not supported with multitenancy.')
@ -497,6 +510,8 @@ class BaremetalStandaloneScenarioTest(BaremetalStandaloneManager):
boot_kwargs['deploy_interface'] = cls.deploy_interface
if cls.rescue_interface:
boot_kwargs['rescue_interface'] = cls.rescue_interface
if cls.boot_interface:
boot_kwargs['boot_interface'] = cls.boot_interface
# just get an available node
cls.node = cls.get_and_reserve_node()

View File

@ -237,3 +237,99 @@ class BaremetalIpmiRescuePartitioned(bsm.BaremetalStandaloneScenarioTest):
self.unrescue_node(self.node['uuid'])
self.assertTrue(self.ping_ip_address(self.node_ip,
should_succeed=True))
class BaremetalIloDirectWholediskHttpLink(
bsm.BaremetalStandaloneScenarioTest):
api_microversion = '1.31' # to set the deploy_interface
driver = 'ilo'
deploy_interface = 'direct'
boot_interface = 'ilo-virtual-media'
image_ref = CONF.baremetal.whole_disk_image_url
image_checksum = CONF.baremetal.whole_disk_image_checksum
wholedisk_image = True
@decorators.idempotent_id('c2db24e7-b9bb-44df-6765-e60134346fd0')
@utils.services('network')
def test_ip_access_to_server(self):
self.boot_and_verify_node()
class BaremetalIloDirectPartitioned(bsm.BaremetalStandaloneScenarioTest):
api_microversion = '1.31' # to set the deploy_interface
driver = 'ilo'
deploy_interface = 'direct'
boot_interface = 'ilo-virtual-media'
image_ref = CONF.baremetal.partition_image_ref
wholedisk_image = False
@decorators.idempotent_id('ea85e19c-d8dc-4577-4d05-fbbbe4ce3f8c')
@utils.services('image', 'network')
def test_ip_access_to_server(self):
self.boot_and_verify_node()
class BaremetalIloIscsiWholediskHttpLink(
bsm.BaremetalStandaloneScenarioTest):
api_microversion = '1.31' # to set the deploy_interface
driver = 'ilo'
deploy_interface = 'iscsi'
boot_interface = 'ilo-virtual-media'
image_ref = CONF.baremetal.whole_disk_image_url
image_checksum = CONF.baremetal.whole_disk_image_checksum
wholedisk_image = True
@decorators.idempotent_id('71ccf06f-45db-8f93-afd0-d4efae2bfd4e')
@utils.services('network')
def test_ip_access_to_server(self):
self.boot_and_verify_node()
class BaremetalIloIscsiPartitioned(bsm.BaremetalStandaloneScenarioTest):
api_microversion = '1.31' # to set the deploy_interface
driver = 'ilo'
deploy_interface = 'iscsi'
boot_interface = 'ilo-virtual-media'
image_ref = CONF.baremetal.partition_image_ref
wholedisk_image = False
@decorators.idempotent_id('d926c683-4d05-8252-b9bb-35babbed6e86')
@utils.services('image', 'network')
def test_ip_access_to_server(self):
self.boot_and_verify_node()
class BaremetalIloPxeWholediskHttpLink(
bsm.BaremetalStandaloneScenarioTest):
api_microversion = '1.31' # to set the deploy_interface
driver = 'ilo'
deploy_interface = 'direct'
boot_interface = 'ilo-pxe'
image_ref = CONF.baremetal.whole_disk_image_url
image_checksum = CONF.baremetal.whole_disk_image_checksum
wholedisk_image = True
@decorators.idempotent_id('d926c683-1a32-edbc-07dc-95cd74eefecb')
@utils.services('network')
def test_ip_access_to_server(self):
self.boot_and_verify_node()
class BaremetalIloPxePartitioned(bsm.BaremetalStandaloneScenarioTest):
api_microversion = '1.31' # to set the deploy_interface
driver = 'ilo'
deploy_interface = 'direct'
boot_interface = 'ilo-pxe'
image_ref = CONF.baremetal.partition_image_ref
wholedisk_image = False
@decorators.idempotent_id('71ccf06f-07dc-4577-6869-1b1bfa423b9b')
@utils.services('image', 'network')
def test_ip_access_to_server(self):
self.boot_and_verify_node()