def test_unknown_port_group(self, mock_get_host_ref): session = mock.Mock() session._call_method.return_value = self._fake_port_groups() vlanid, vswitch = network_util.get_vlanid_and_vswitch_for_portgroup( session, 'unknown_port_group', 'fake_cluster') self.assertIsNone(vlanid) self.assertIsNone(vswitch)
def test_valid_port_group(self, mock_get_host_ref): session = mock.Mock() session._call_method.return_value = self._fake_port_groups() vlanid, vswitch = network_util.get_vlanid_and_vswitch_for_portgroup( session, 'port_group_name', 'fake_cluster') self.assertEqual(vlanid, 100) self.assertEqual(vswitch, 'vswitch_name')
def destroy(self, instance, network_info, block_device_info=None, destroy_disks=True, context=None): session = self._session vlan_id = None vswitch = "" if network_info: for vif in network_info: self.VifInfo.unplug(instance, vif) super(ContrailESXDriver, self).destroy(instance, network_info, block_device_info, destroy_disks, context) if not network_info: return for vif in network_info: port_group = vif['network']['label'] + \ '-' + str(instance['hostname']) + \ '-' + str(vif['id']) try: vlan_id, vswitch = \ network_util.get_vlanid_and_vswitch_for_portgroup(session, port_group) except TypeError: pass if not vlan_id: return self.remove_port_group(port_group) self.Vlan.free_vlan(vlan_id)
def test_unknown_port_group(self, mock_get_host_ref): session = mock.Mock() session._call_method.return_value = self._fake_port_groups() vlanid, vswitch = network_util.get_vlanid_and_vswitch_for_portgroup( session, "unknown_port_group", "fake_cluster" ) self.assertIsNone(vlanid) self.assertIsNone(vswitch)
def test_valid_port_group(self, mock_get_host_ref): session = mock.Mock() session._call_method.return_value = self._fake_port_groups() vlanid, vswitch = network_util.get_vlanid_and_vswitch_for_portgroup( session, 'port_group_name', 'fake_cluster' ) self.assertEqual(vlanid, 100) self.assertEqual(vswitch, 'vswitch_name')
def plug_vifs(self, instance, network_info): """Plug VIFs into networks.""" session = self._session for vif in network_info: vlan_id = None vswitch = "" port_group = vif['network']['label'] + \ '-' + str(instance['hostname']) + \ '-' + str(vif['id']) try: vlan_id, vswitch = \ network_util.get_vlanid_and_vswitch_for_portgroup(session, port_group) except TypeError: pass if not vlan_id: continue vif['network']['bridge'] = vif['network']['label'] + \ '-' + str(instance['hostname']) + \ '-' + str(vif['id']) self.VifInfo.plug(instance, vif, vlan_id)