Remove remaining CONF references in service_client

The client manager and javelin2 provide these values now, and
NegativeRestClient was fixed to not need these values.
This change is needed to move clients to tempest_lib.

Change-Id: Id30f17281b7e2f9c2a9ef5b9861a27e294911ff6
This commit is contained in:
David Kranz 2015-03-20 09:42:56 -04:00
parent f731aa355e
commit 1e33e374ce
3 changed files with 24 additions and 18 deletions

View File

@ -227,7 +227,7 @@ class Manager(manager.Manager):
endpoint_type=CONF.data_processing.endpoint_type, endpoint_type=CONF.data_processing.endpoint_type,
**self.default_params_with_timeout_values) **self.default_params_with_timeout_values)
self.negative_client = negative_rest_client.NegativeRestClient( self.negative_client = negative_rest_client.NegativeRestClient(
self.auth_provider, service) self.auth_provider, service, **self.default_params)
# Generating EC2 credentials in tempest is only supported # Generating EC2 credentials in tempest is only supported
# with identity v2 # with identity v2

View File

@ -25,25 +25,39 @@ class NegativeRestClient(service_client.ServiceClient):
""" """
Version of RestClient that does not raise exceptions. Version of RestClient that does not raise exceptions.
""" """
def __init__(self, auth_provider, service): def __init__(self, auth_provider, service,
region = self._get_region(service) build_interval=None, build_timeout=None,
super(NegativeRestClient, self).__init__(auth_provider, disable_ssl_certificate_validation=None,
service, region) ca_certs=None, trace_requests=None):
region, endpoint_type = self._get_region_and_endpoint_type(service)
super(NegativeRestClient, self).__init__(
auth_provider,
service,
region,
endpoint_type=endpoint_type,
build_interval=build_interval,
build_timeout=build_timeout,
disable_ssl_certificate_validation=(
disable_ssl_certificate_validation),
ca_certs=ca_certs,
trace_requests=trace_requests)
def _get_region(self, service): def _get_region_and_endpoint_type(self, service):
""" """
Returns the region for a specific service Returns the region for a specific service
""" """
service_region = None service_region = None
service_endpoint_type = None
for cfgname in dir(CONF._config): for cfgname in dir(CONF._config):
# Find all config.FOO.catalog_type and assume FOO is a service. # Find all config.FOO.catalog_type and assume FOO is a service.
cfg = getattr(CONF, cfgname) cfg = getattr(CONF, cfgname)
catalog_type = getattr(cfg, 'catalog_type', None) catalog_type = getattr(cfg, 'catalog_type', None)
if catalog_type == service: if catalog_type == service:
service_region = getattr(cfg, 'region', None) service_region = getattr(cfg, 'region', None)
service_endpoint_type = getattr(cfg, 'endpoint_type', None)
if not service_region: if not service_region:
service_region = CONF.identity.region service_region = CONF.identity.region
return service_region return service_region, service_endpoint_type
def _error_checker(self, method, url, def _error_checker(self, method, url,
headers, body, resp, resp_body): headers, body, resp, resp_body):

View File

@ -14,10 +14,6 @@
from tempest_lib.common import rest_client from tempest_lib.common import rest_client
from tempest import config
CONF = config.CONF
class ServiceClient(rest_client.RestClient): class ServiceClient(rest_client.RestClient):
@ -26,15 +22,11 @@ class ServiceClient(rest_client.RestClient):
disable_ssl_certificate_validation=None, ca_certs=None, disable_ssl_certificate_validation=None, ca_certs=None,
trace_requests=None): trace_requests=None):
# TODO(oomichi): This params setting should be removed after all dscv = disable_ssl_certificate_validation
# service clients pass these values, and we can make ServiceClient
# free from CONF values.
dscv = (disable_ssl_certificate_validation or
CONF.identity.disable_ssl_certificate_validation)
params = { params = {
'disable_ssl_certificate_validation': dscv, 'disable_ssl_certificate_validation': dscv,
'ca_certs': ca_certs or CONF.identity.ca_certificates_file, 'ca_certs': ca_certs,
'trace_requests': trace_requests or CONF.debug.trace_requests 'trace_requests': trace_requests
} }
if endpoint_type is not None: if endpoint_type is not None: