Bring configurations from tempest to ironic_tempest_plugin

To remove our tests from tempest first we need to bring the configurations that
we need to the tempest plugin.

Closes-Bug: #1614516
Change-Id: Iad6e16c28cf2a35cc6bf040f57224d32c085b7bc
(cherry picked from commit ab6f73f7a0)
This commit is contained in:
Thiago Paiva 2016-08-15 15:23:30 -03:00 committed by Jim Rollenhagen
parent 45e954d057
commit ece53fef0b
5 changed files with 40 additions and 36 deletions

View File

@ -1512,6 +1512,9 @@ function ironic_configure_tempest {
image_uuid=$(openstack image show $IRONIC_IMAGE_NAME -f value -c id)
iniset $TEMPEST_CONFIG compute image_ref $image_uuid
iniset $TEMPEST_CONFIG compute image_ref_alt $image_uuid
iniset $TEMPEST_CONFIG auth create_isolated_networks False
iniset $TEMPEST_CONFIG network-feature-enabled port_admin_state_change False
}
# Restore xtrace + pipefail

View File

@ -36,9 +36,15 @@ class Manager(clients.Manager):
:param service: service name
"""
super(Manager, self).__init__(credentials, service)
default_params_with_timeout_values = {
'build_interval': CONF.compute.build_interval,
'build_timeout': CONF.compute.build_timeout
}
default_params_with_timeout_values.update(self.default_params)
self.baremetal_client = BaremetalClient(
self.auth_provider,
CONF.baremetal.catalog_type,
CONF.identity.region,
endpoint_type=CONF.baremetal.endpoint_type,
**self.default_params_with_timeout_values)
**default_params_with_timeout_values)

View File

@ -28,44 +28,38 @@ baremetal_group = cfg.OptGroup(name='baremetal',
'live_migration, pause, rescue, resize, '
'shelve, snapshot, and suspend')
# NOTE(maurosr): Until liberty-eol we need to keep config options and tests
# on tempest's tree to test stable branches and thus we have to comment the
# options bellow to avoid duplication. Only new options should live here.
BaremetalGroup = [
# cfg.StrOpt('catalog_type',
# default='baremetal',
# help="Catalog type of the baremetal provisioning service"),
# cfg.BoolOpt('driver_enabled',
# default=True,
# help="Whether the Ironic nova-compute driver is enabled"),
# cfg.StrOpt('driver',
# default='fake',
# help="Driver name which Ironic uses"),
# cfg.StrOpt('endpoint_type',
# default='publicURL',
# choices=['public', 'admin', 'internal',
# 'publicURL', 'adminURL', 'internalURL'],
# help="The endpoint type to use for the baremetal provisioning"
# " service"),
cfg.StrOpt('catalog_type',
default='baremetal',
help="Catalog type of the baremetal provisioning service"),
cfg.StrOpt('driver',
default='fake',
help="Driver name which Ironic uses"),
cfg.StrOpt('endpoint_type',
default='publicURL',
choices=['public', 'admin', 'internal',
'publicURL', 'adminURL', 'internalURL'],
help="The endpoint type to use for the baremetal provisioning"
" service"),
cfg.IntOpt('deploywait_timeout',
default=15,
help="Timeout for Ironic node to reach the "
"wait-callback state after powering on."),
# cfg.IntOpt('active_timeout',
# default=300,
# help="Timeout for Ironic node to completely provision"),
# cfg.IntOpt('association_timeout',
# default=30,
# help="Timeout for association of Nova instance and Ironic "
# "node"),
# cfg.IntOpt('power_timeout',
# default=60,
# help="Timeout for Ironic power transitions."),
# cfg.IntOpt('unprovision_timeout',
# default=300,
# help="Timeout for unprovisioning an Ironic node. "
# "Takes longer since Kilo as Ironic performs an extra "
# "step in Node cleaning.")
cfg.IntOpt('active_timeout',
default=300,
help="Timeout for Ironic node to completely provision"),
cfg.IntOpt('association_timeout',
default=30,
help="Timeout for association of Nova instance and Ironic "
"node"),
cfg.IntOpt('power_timeout',
default=60,
help="Timeout for Ironic power transitions."),
cfg.IntOpt('unprovision_timeout',
default=300,
help="Timeout for unprovisioning an Ironic node. "
"Takes longer since Kilo as Ironic performs an extra "
"step in Node cleaning."),
cfg.StrOpt('min_microversion',
help="Lower version of the test target microversion range. "
"The format is 'X.Y', where 'X' and 'Y' are int values. "

View File

@ -58,8 +58,8 @@ class BaremetalScenarioTest(manager.ScenarioTest):
@classmethod
def skip_checks(cls):
super(BaremetalScenarioTest, cls).skip_checks()
if not CONF.baremetal.driver_enabled:
msg = 'Ironic not available or Ironic compute driver not enabled'
if CONF.network_feature_enabled.port_admin_state_change:
msg = "Port state change feature isn't supported by Ironic."
raise cls.skipException(msg)
@classmethod

View File

@ -39,6 +39,7 @@ class BaremetalBasicOps(baremetal_manager.BaremetalScenarioTest):
* Monitors the associated Ironic node for power and
expected state transitions
"""
def rebuild_instance(self, preserve_ephemeral=False):
self.rebuild_server(server_id=self.instance['id'],
preserve_ephemeral=preserve_ephemeral,