diff --git a/tobiko/openstack/keystone/_client.py b/tobiko/openstack/keystone/_client.py index 203c2fcd3..db726d9d0 100644 --- a/tobiko/openstack/keystone/_client.py +++ b/tobiko/openstack/keystone/_client.py @@ -33,7 +33,13 @@ LOG = log.getLogger(__name__) class KeystoneClientFixture(_client.OpenstackClientFixture): def init_client(self, session): - return keystoneclient.Client(session=session) + from tobiko import config + if config.CONF.tobiko.keystone.interface is None: + return keystoneclient.Client(session=session) + else: + return keystoneclient.Client( + session=session, + interface=config.CONF.tobiko.keystone.interface) class KeystoneClientManager(_client.OpenstackClientManager): diff --git a/tobiko/openstack/keystone/config.py b/tobiko/openstack/keystone/config.py index 8945ef057..5118b39fb 100644 --- a/tobiko/openstack/keystone/config.py +++ b/tobiko/openstack/keystone/config.py @@ -62,7 +62,10 @@ OPTIONS = [ help="Directories where to look for clouds files"), cfg.ListOpt('clouds_file_names', default=['clouds.yaml', 'clouds.yml', 'clouds.json'], - help="Clouds file names")] + help="Clouds file names"), + cfg.StrOpt('interface', + default=None, + help="default value in case keystone interface is needed")] def register_tobiko_options(conf):