Revert "Revert "Use interface not endpoint_type for keystoneclient""

Unrevert the endpoint_type/interface patch. But this time around, put in
a check for API version 2.0 and only apply the interface arg if it's for
v3.

This reverts commit 4493871824.

Change-Id: Ib347ec686d4d01788ee943c4c4f809aad06d9ccf
This commit is contained in:
Monty Taylor 2017-05-13 08:45:26 -05:00
parent 4493871824
commit a483534123
No known key found for this signature in database
GPG Key ID: 7BAE94BC7141A594
2 changed files with 14 additions and 11 deletions

View File

@ -366,12 +366,6 @@ class CloudConfig(object):
service_key, min_version=min_version, max_version=max_version)
endpoint_override = self.get_endpoint(service_key)
if not interface_key:
if service_key in ('image', 'key-manager'):
interface_key = 'interface'
else:
interface_key = 'endpoint_type'
if service_key == 'object-store':
constructor_kwargs = dict(
session=self.get_session(),
@ -404,10 +398,6 @@ class CloudConfig(object):
if not endpoint_override:
constructor_kwargs['endpoint_override'] = endpoint
constructor_kwargs.update(kwargs)
if service_key == 'object-store':
constructor_kwargs['os_options'][interface_key] = interface
else:
constructor_kwargs[interface_key] = interface
if pass_version_arg and service_key != 'object-store':
if not version:
version = self.get_api_version(service_key)
@ -451,6 +441,19 @@ class CloudConfig(object):
constructor_kwargs['username'] = None
constructor_kwargs['password'] = None
if not interface_key:
if service_key in ('image', 'key-manager'):
interface_key = 'interface'
elif (service_key == 'identity'
and version and version.startswith('3')):
interface_key = 'interface'
else:
interface_key = 'endpoint_type'
if service_key == 'object-store':
constructor_kwargs['os_options'][interface_key] = interface
else:
constructor_kwargs[interface_key] = interface
return client_class(**constructor_kwargs)
def get_cache_expiration_time(self):

View File

@ -570,7 +570,7 @@ class TestCloudConfig(base.TestCase):
mock_client.assert_called_with(
version='3',
endpoint='http://example.com',
endpoint_type='admin',
interface='admin',
endpoint_override=None,
region_name='region-al',
service_type='identity',