Example #1
0
 def create(self):
     name = self.context.make_bridge_name()
     try:
         with self.get_ipdb().create(kind='bridge', ifname=name):
             pass
     except pyroute2.CreateException:
         raise exc.SystemResourceExistsError(type(self), name)
Example #2
0
 def create(self):
     name = self.context.make_network_namespace_name()
     klass = type(self)
     try:
         pyroute2.netns.create(name)
     except OSError as e:
         if e.errno == errno.EEXIST:
             raise exc.SystemResourceExistsError(klass, name)
         raise exc.SystemResourceError(klass, name) from e
Example #3
0
    def create(self):
        name = self.context.make_network_namespace_name()
        klass = type(self)
        try:
            pyroute2.netns.create(name)
        except OSError as e:
            if e.errno == errno.EEXIST:
                raise exc.SystemResourceExistsError(klass, name)
            raise exc.SystemResourceError(klass, name) from e

        self._sysctl(name, 'net.ipv6.conf.default.disable_ipv6', 1)
Example #4
0
    def create(self):
        name = self.make_name()
        left, right = name
        klass = type(self)

        try:
            with self.get_ipdb().create(kind='veth', ifname=left, peer=right):
                # don't do any extra configuration here
                pass
        except pyroute2.CreateException:
            raise exc.SystemResourceExistsError(klass, name)
        except Exception as e:
            raise exc.SystemResourceError(klass, name) from e