summaryrefslogtreecommitdiffstats
path: root/snaps/openstack/create_router.py
diff options
context:
space:
mode:
Diffstat (limited to 'snaps/openstack/create_router.py')
-rw-r--r--snaps/openstack/create_router.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/snaps/openstack/create_router.py b/snaps/openstack/create_router.py
index f0ccb5d..50c0b28 100644
--- a/snaps/openstack/create_router.py
+++ b/snaps/openstack/create_router.py
@@ -43,6 +43,8 @@ class OpenStackRouter(OpenStackNetworkObject):
if not router_settings:
raise RouterCreationError('router_settings is required')
+ self.__keystone = None
+
self.router_settings = router_settings
# Attributes instantiated on create()
@@ -61,9 +63,13 @@ class OpenStackRouter(OpenStackNetworkObject):
"""
super(self.__class__, self).initialize()
+ self.__keystone = keystone_utils.keystone_client(self._os_creds)
+
try:
self.__router = neutron_utils.get_router(
- self._neutron, router_settings=self.router_settings)
+ self._neutron, self.__keystone,
+ router_settings=self.router_settings,
+ project_name=self._os_creds.project_name)
except Unauthorized as e:
logger.warn('Unable to lookup router with name %s - %s',
self.router_settings.name, e)
@@ -78,10 +84,9 @@ class OpenStackRouter(OpenStackNetworkObject):
raise RouterCreationError(
'Subnet not found with name ' + internal_subnet_name)
- keystone = keystone_utils.keystone_client(self._os_creds)
for port_setting in self.router_settings.port_settings:
port = neutron_utils.get_port(
- self._neutron, keystone, port_settings=port_setting,
+ self._neutron, self.__keystone, port_settings=port_setting,
project_name=self._os_creds.project_name)
if port:
self.__ports.append(port)
@@ -114,10 +119,9 @@ class OpenStackRouter(OpenStackNetworkObject):
raise RouterCreationError(
'Subnet not found with name ' + internal_subnet_name)
- keystone = keystone_utils.keystone_client(self._os_creds)
for port_setting in self.router_settings.port_settings:
port = neutron_utils.get_port(
- self._neutron, keystone, port_settings=port_setting,
+ self._neutron, self.__keystone, port_settings=port_setting,
project_name=self._os_creds.project_name)
logger.info(
'Retrieved port %s for router - %s', port_setting.name,