diff --git a/astara/api/__init__.py b/astara/api/__init__.py index ef982386..8e0c6cee 100644 --- a/astara/api/__init__.py +++ b/astara/api/__init__.py @@ -28,5 +28,6 @@ api_opts = [ cfg.StrOpt('auth_region'), cfg.IntOpt('max_retries', default=3), cfg.IntOpt('retry_delay', default=1), + cfg.StrOpt('endpoint_type', default='publicURL'), ] CONF.register_opts(api_opts) diff --git a/astara/api/neutron.py b/astara/api/neutron.py index 9ca278eb..39bf39b8 100644 --- a/astara/api/neutron.py +++ b/astara/api/neutron.py @@ -791,6 +791,7 @@ class Neutron(object): ks_session = keystone.KeystoneSession() self.api_client = AstaraExtClientWrapper( session=ks_session.session, + endpoint_type=cfg.CONF.endpoint_type, ) self.l3_rpc_client = L3PluginApi(PLUGIN_ROUTER_RPC_TOPIC, cfg.CONF.host) diff --git a/astara/api/nova.py b/astara/api/nova.py index 258fbe83..b035f193 100644 --- a/astara/api/nova.py +++ b/astara/api/nova.py @@ -249,7 +249,8 @@ class Nova(object): self.client = client.Client( version='2', session=ks_session.session, - region_name=conf.auth_region) + region_name=conf.auth_region, + endpoint_type=conf.endpoint_type) try: self.instance_provider = get_instance_provider( diff --git a/astara/test/unit/api/test_nova_wrapper.py b/astara/test/unit/api/test_nova_wrapper.py index 782a420d..2646b620 100644 --- a/astara/test/unit/api/test_nova_wrapper.py +++ b/astara/test/unit/api/test_nova_wrapper.py @@ -84,6 +84,7 @@ class FakeConf: router_image_uuid = 'astara-image' router_instance_flavor = 1 instance_provider = 'foo' + endpoint_type = 'publicURL' EXPECTED_USERDATA = """