def test_portcontext_to_nwa_info_original_port(self): device_owner = 'do-1' device_id = 'di-1' id_ = 'id-1' subnet_id = 'sid-1' ip_address = '192.168.120.1' mac = 'mac-1' self.context.original = { 'device_owner': device_owner, 'device_id': device_id, 'id': id_, 'fixed_ips': [ { 'ip_address': ip_address, 'subnet_id': subnet_id }, ], 'mac_address': mac, } rd = nwa_l2_utils.portcontext_to_nwa_info(self.context, self.resource_group, True) self.assertIsInstance(rd, dict) self.assertEqual(rd['device']['owner'], device_owner) self.assertEqual(rd['device']['id'], device_id) self.assertEqual(rd['subnet']['id'], subnet_id) self.assertEqual(rd['port']['id'], id_) self.assertEqual(rd['port']['ip'], ip_address) self.assertEqual(rd['port']['mac'], mac)
def _add_router_interface_by_port(self, plugin, context, router_id, interface_info): try: session = context.session port = plugin._core_plugin._get_port(context, interface_info['port_id']) network = plugin._core_plugin.get_network(context, port['network_id']) binding = nwa_db.ensure_port_binding(session, port['id']) port_context = driver_context.PortContext(plugin._core_plugin, context, port, network, binding, None) nwa_info = nwa_l2_utils.portcontext_to_nwa_info( port_context, self.resource_groups) rt_tid = nwa_l3_db.get_tenant_id_by_router( session, router_id ) nwa_rt_tid = nwa_com_utils.get_nwa_tenant_id(rt_tid) nwa_info['tenant_id'] = rt_tid nwa_info['nwa_tenant_id'] = nwa_rt_tid proxy = self._get_nwa_proxy(plugin, rt_tid) proxy.create_tenant_fw( port_context.network._plugin_context, rt_tid, nwa_rt_tid, nwa_info ) except Exception as e: LOG.exception(_LE("create tenant firewall %s"), e)
def test_portcontext_to_nwa_info_original_port(self): device_owner = 'do-1' device_id = 'di-1' id_ = 'id-1' subnet_id = 'sid-1' ip_address = '192.168.120.1' mac = 'mac-1' self.context.original = { 'device_owner': device_owner, 'device_id': device_id, 'id': id_, 'fixed_ips': [ {'ip_address': ip_address, 'subnet_id': subnet_id}, ], 'mac_address': mac, } rd = nwa_l2_utils.portcontext_to_nwa_info(self.context, self.resource_group, True) self.assertIsInstance(rd, dict) self.assertEqual(rd['device']['owner'], device_owner) self.assertEqual(rd['device']['id'], device_id) self.assertEqual(rd['subnet']['id'], subnet_id) self.assertEqual(rd['port']['id'], id_) self.assertEqual(rd['port']['ip'], ip_address) self.assertEqual(rd['port']['mac'], mac)
def _make_l2api_kwargs(self, context, use_original_port=False): tenant_id, nwa_tenant_id = nwa_com_utils.get_tenant_info(context) nwa_info = nwa_l2_utils.portcontext_to_nwa_info( context, self.resource_groups, use_original_port) return { 'tenant_id': tenant_id, 'nwa_tenant_id': nwa_tenant_id, 'nwa_info': nwa_info }
def test_portcontext_to_nwa_info(self): self.context.current = self.context._port rd = nwa_l2_utils.portcontext_to_nwa_info(self.context, self.resource_group) self.assertIsInstance(rd, dict) p = self.context._port self.assertEqual(rd['device']['owner'], p['device_owner']) self.assertEqual(rd['device']['id'], p['device_id']) self.assertEqual(rd['subnet']['id'], p['fixed_ips'][0]['subnet_id']) self.assertEqual(rd['port']['id'], p['id']) self.assertEqual(rd['port']['ip'], p['fixed_ips'][0]['ip_address']) self.assertEqual(rd['port']['mac'], p['mac_address'])
def test_portcontext_to_nwa_info_business_vlan(self): # session in context self.context.session = MagicMock() # external network is not found self.context.session.query().filter_by().\ one.side_effect = sa_exc.NoResultFound self.context.network.current['name'] = 'BusinessVLAN_200' self.context.network.current['id'] = 'Uuid-BusinessVLAN_200' self.context.current = self.context._port rd = nwa_l2_utils.portcontext_to_nwa_info(self.context, self.resource_group) self.assertIsInstance(rd, dict) self.assertEqual(rd['network']['vlan_type'], 'BusinessVLAN')
def _make_l3api_kwargs(self, context): rt_tid = nwa_l3_db.get_tenant_id_by_router( context.network._plugin_context.session, context._port['device_id']) nwa_rt_tid = nwa_com_utils.get_nwa_tenant_id(rt_tid) nwa_info = nwa_l2_utils.portcontext_to_nwa_info( context, self.resource_groups) nwa_info['tenant_id'] = rt_tid # overwrite by router's nwa_info['nwa_tenant_id'] = nwa_rt_tid # tenant_id and nwa_tenant_id return { 'tenant_id': rt_tid, 'nwa_tenant_id': nwa_rt_tid, 'nwa_info': nwa_info }
def _make_l3api_kwargs(self, context): rt_tid = nwa_l3_db.get_tenant_id_by_router( context.network._plugin_context.session, context._port['device_id'] ) nwa_rt_tid = nwa_com_utils.get_nwa_tenant_id(rt_tid) nwa_info = nwa_l2_utils.portcontext_to_nwa_info( context, self.resource_groups) nwa_info['tenant_id'] = rt_tid # overwrite by router's nwa_info['nwa_tenant_id'] = nwa_rt_tid # tenant_id and nwa_tenant_id return { 'tenant_id': rt_tid, 'nwa_tenant_id': nwa_rt_tid, 'nwa_info': nwa_info }
def test_portcontext_to_nwa_info_original_port_no_fixedip(self): device_owner = 'do-2' device_id = 'di-2' id_ = 'id-2' subnet_id = '' ip_address = '' mac = '' self.context.original = { 'device_owner': device_owner, 'device_id': device_id, 'id': id_, 'fixed_ips': [], 'mac_address': mac, } rd = nwa_l2_utils.portcontext_to_nwa_info(self.context, self.resource_group, True) self.assertIsInstance(rd, dict) self.assertEqual(rd['device']['owner'], device_owner) self.assertEqual(rd['device']['id'], device_id) self.assertEqual(rd['subnet']['id'], subnet_id) self.assertEqual(rd['port']['id'], id_) self.assertEqual(rd['port']['ip'], ip_address) self.assertEqual(rd['port']['mac'], mac)