Enable Tempest without devstack
To be able to use the functional tests outside of devstack, this adds a configurtion option to bypass the service catalog and disables checking SSL certificates during testing. Change-Id: I56d7403e268074ddb167f6ae8dac8b86b77eb1aa Partially-Implements: blueprint magnum-tempest
This commit is contained in:
parent
5302b88a1b
commit
d99d9fc6ed
|
@ -27,7 +27,8 @@ class MagnumClient(rest_client.RestClient):
|
|||
super(MagnumClient, self).__init__(
|
||||
auth_provider=auth_provider,
|
||||
service='container',
|
||||
region=config.Config.region
|
||||
region=config.Config.region,
|
||||
disable_ssl_certificate_validation=True
|
||||
)
|
||||
|
||||
@classmethod
|
||||
|
|
|
@ -87,6 +87,10 @@ class Config(object):
|
|||
raise Exception('config missing flavor_id key')
|
||||
cls.flavor_id = CONF.magnum.flavor_id
|
||||
|
||||
@classmethod
|
||||
def set_magnum_url(cls, config):
|
||||
cls.magnum_url = CONF.magnum.get('magnum_url', None)
|
||||
|
||||
@classmethod
|
||||
def setUp(cls):
|
||||
cls.set_admin_creds(config)
|
||||
|
@ -100,3 +104,4 @@ class Config(object):
|
|||
cls.set_nic_id(config)
|
||||
cls.set_keypair_id(config)
|
||||
cls.set_flavor_id(config)
|
||||
cls.set_magnum_url(config)
|
||||
|
|
|
@ -17,6 +17,7 @@ from magnum.tests.functional.api.v1.clients import bay_client
|
|||
from magnum.tests.functional.api.v1.clients import baymodel_client
|
||||
from magnum.tests.functional.api.v1.clients import magnum_service_client
|
||||
from magnum.tests.functional.common import client
|
||||
from magnum.tests.functional.common import config
|
||||
|
||||
|
||||
class Manager(clients.Manager):
|
||||
|
@ -26,6 +27,8 @@ class Manager(clients.Manager):
|
|||
'identity_admin'),
|
||||
request_type=None):
|
||||
super(Manager, self).__init__(credentials, 'container')
|
||||
self.auth_provider.orig_base_url = self.auth_provider.base_url
|
||||
self.auth_provider.base_url = self.bypassed_base_url
|
||||
if request_type == 'baymodel':
|
||||
self.client = baymodel_client.BayModelClient(self.auth_provider)
|
||||
elif request_type == 'bay':
|
||||
|
@ -36,6 +39,11 @@ class Manager(clients.Manager):
|
|||
else:
|
||||
self.client = client.MagnumClient(self.auth_provider)
|
||||
|
||||
def bypassed_base_url(self, filters, auth_data=None):
|
||||
if config.Config.magnum_url and filters['service'] == 'container':
|
||||
return config.Config.magnum_url
|
||||
return self.auth_provider.orig_base_url(filters, auth_data=auth_data)
|
||||
|
||||
|
||||
class DefaultManager(Manager):
|
||||
def __init__(self, credentials, request_type=None):
|
||||
|
|
|
@ -43,4 +43,8 @@ MagnumGroup = [
|
|||
cfg.StrOpt("flavor_id",
|
||||
default="m1.magnum",
|
||||
help="Flavor id to use for baymodels."),
|
||||
|
||||
cfg.StrOpt("magnum_url",
|
||||
default=None,
|
||||
help="Bypass URL for Magnum to skip service catalog lookup"),
|
||||
]
|
||||
|
|
Loading…
Reference in New Issue