示例#1
0
 def _cleanup(self):
     if self.namespace:
         priv_ip_lib.remove_netns(self.namespace)
     else:
         for device in (self.device_vxlan, self.device):
             try:
                 priv_ip_lib.delete_interface(device, None)
             except priv_ip_lib.NetworkInterfaceNotFound:
                 pass
示例#2
0
 def _cleanup(self):
     self.proc.stop(kill_timeout=10, kill_signal=signal.SIGTERM)
     if self.namespace:
         priv_ip_lib.remove_netns(self.namespace)
     else:
         for device in self.devices:
             try:
                 priv_ip_lib.delete_interface(device, self.namespace)
             except priv_ip_lib.NetworkInterfaceNotFound:
                 pass
示例#3
0
    def test_get_devices(self):
        namespace = 'ns_test-' + uuidutils.generate_uuid()
        priv_ip_lib.create_netns(namespace)
        self.addCleanup(self._remove_ns, namespace)
        interfaces = ['int_01', 'int_02', 'int_03', 'int_04', 'int_05']
        interfaces_to_check = (interfaces + ip_lib.FB_TUNNEL_DEVICE_NAMES +
                               [ip_lib.LOOPBACK_DEVNAME])
        for interface in interfaces:
            priv_ip_lib.create_interface(interface, namespace, 'dummy')

        device_names = priv_ip_lib.get_devices(namespace)
        for name in device_names:
            self.assertIn(name, interfaces_to_check)

        for interface in interfaces:
            priv_ip_lib.delete_interface(interface, namespace)

        device_names = priv_ip_lib.get_devices(namespace)
        for name in device_names:
            self.assertNotIn(name, interfaces)
示例#4
0
    def test_get_device_names(self):
        namespace = 'ns_test-' + uuidutils.generate_uuid()
        priv_ip_lib.create_netns(namespace)
        self.addCleanup(self._remove_ns, namespace)
        interfaces = ['int_01', 'int_02', 'int_03', 'int_04', 'int_05']
        interfaces_to_check = (interfaces + ip_lib.FB_TUNNEL_DEVICE_NAMES +
                               [ip_lib.LOOPBACK_DEVNAME])
        for interface in interfaces:
            priv_ip_lib.create_interface(interface, namespace, 'dummy')

        device_names = priv_ip_lib.get_device_names(namespace)
        self.assertGreater(len(device_names), 0)
        for name in device_names:
            self.assertIn(name, interfaces_to_check)

        for interface in interfaces:
            priv_ip_lib.delete_interface(interface, namespace)

        device_names = priv_ip_lib.get_device_names(namespace)
        self.assertGreater(len(device_names), 0)
        for name in device_names:
            self.assertNotIn(name, interfaces)
示例#5
0
文件: ip_lib.py 项目: huntxu/neutron
 def delete(self):
     privileged.delete_interface(self.name, self._parent.namespace)
示例#6
0
文件: ip_lib.py 项目: huntxu/neutron
 def del_veth(self, name):
     """Delete a virtual interface between two namespaces."""
     privileged.delete_interface(name, self.namespace)
示例#7
0
 def delete(self):
     privileged.delete_interface(self.name, self._parent.namespace)
示例#8
0
 def del_veth(self, name):
     """Delete a virtual interface between two namespaces."""
     privileged.delete_interface(name, self.namespace)
 def _remove_device(self, device_name):
     priv_ip_lib.delete_interface(device_name, None)
示例#10
0
 def _cleanup(self):
     if self.namespace:
         priv_ip_lib.remove_netns(self.namespace)
     else:
         priv_ip_lib.delete_interface(self.device_vxlan, None)
         priv_ip_lib.delete_interface(self.device, None)
示例#11
0
 def remove_vrf(self, vrf):
     if self.vrf_tables.get(vrf):
         privileged.set_link_attribute(vrf, None, state="down")
         privileged.delete_interface(vrf, None)
         self.vrf_tables.pop(vrf)
         LOG.debug("Removed vrf %s", vrf)
示例#12
0
 def _cleanup(self):
     if self.namespace:
         priv_ip_lib.remove_netns(self.namespace)
     else:
         priv_ip_lib.delete_interface(self.device_vxlan, None)
         priv_ip_lib.delete_interface(self.device, None)