Refactored port retrieval to include PortSettigs.
[snaps.git] / snaps / openstack / create_router.py
index e50009c..6bbfcf9 100644 (file)
@@ -81,15 +81,16 @@ class OpenStackRouter:
                 self.__internal_subnets.append(internal_subnet)
                 if internal_subnet and not cleanup and not existing:
                     logger.debug('Adding router to subnet...')
-                    self.__internal_router_interface = neutron_utils.add_interface_router(
+                    router_intf = neutron_utils.add_interface_router(
                         self.__neutron, self.__router, subnet=internal_subnet)
+                    self.__internal_router_interface = router_intf
             else:
                 raise RouterCreationError(
                     'Subnet not found with name ' + internal_subnet_name)
 
         for port_setting in self.router_settings.port_settings:
-            port = neutron_utils.get_port_by_name(self.__neutron,
-                                                  port_setting.name)
+            port = neutron_utils.get_port(
+                self.__neutron, port_settings=port_setting)
             logger.info(
                 'Retrieved port %s for router - %s', port_setting.name,
                 self.router_settings.name)
@@ -232,18 +233,17 @@ class RouterSettings:
         out = dict()
         ext_gw = dict()
 
-        project_id = None
-
         if self.name:
             out['name'] = self.name
         if self.project_name:
             keystone = keystone_utils.keystone_client(os_creds)
-            project = keystone_utils.get_project(keystone, self.project_name)
+            project = keystone_utils.get_project(
+                keystone=keystone, project_name=self.project_name)
             project_id = None
             if project:
                 project_id = project.id
             if project_id:
-                out['project_id'] = project_id
+                out['tenant_id'] = project_id
             else:
                 raise RouterSettingsError(
                     'Could not find project ID for project named - ' +
@@ -251,8 +251,8 @@ class RouterSettings:
         if self.admin_state_up is not None:
             out['admin_state_up'] = self.admin_state_up
         if self.external_gateway:
-            ext_net = neutron_utils.get_network(neutron, self.external_gateway,
-                                                project_id)
+            ext_net = neutron_utils.get_network(
+                neutron, network_name=self.external_gateway)
             if ext_net:
                 ext_gw['network_id'] = ext_net.id
                 out['external_gateway_info'] = ext_gw
@@ -261,9 +261,6 @@ class RouterSettings:
                     'Could not find the external network named - ' +
                     self.external_gateway)
 
-        # TODO: Enable SNAT option for Router
-        # TODO: Add external_fixed_ips Tests
-
         return {'router': out}