Petr Horáček has uploaded a new change for review. Change subject: pyroute2: ports target is not set ......................................................................
pyroute2: ports target is not set Network tests using pyroute2 sometimes raise: CommitException: ports target is not set. It seems quite random to me (I didn't find the cause). Anyway, I looked at some pyroute2 examples in its docs and i found, that they add bridge and its port in one with statement, so i removed addBridgePort() function from pyroute2 and changed addBridge() to work that way. Change-Id: I3f3bf85f161e498f396e3cf130fb8308ae932860 Signed-off-by: Petr Horáček <[email protected]> --- M vdsm/network/configurators/pyroute_two.py 1 file changed, 15 insertions(+), 6 deletions(-) git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/01/31201/1 diff --git a/vdsm/network/configurators/pyroute_two.py b/vdsm/network/configurators/pyroute_two.py index 9fe63b5..33184af 100644 --- a/vdsm/network/configurators/pyroute_two.py +++ b/vdsm/network/configurators/pyroute_two.py @@ -25,6 +25,7 @@ from . import libvirt from .dhclient import DhcpClient from .iproute2 import Iproute2 +from ..sourceroute import DynamicSourceRoute try: from pyroute2 import IPDB @@ -48,6 +49,15 @@ self.configApplier = None self.runningConfig.save() self.runningConfig = None + + def configureBridge(self, bridge, **opts): + self.configApplier.addBridge(bridge, **opts) + DynamicSourceRoute.addInterfaceTracking(bridge) + self.configApplier.setIfaceConfigAndUp(bridge) + self._addSourceRoute(bridge) + if 'custom' in opts and 'bridge_opts' in opts['custom']: + self.configApplier._setBridgeOpts(bridge, + opts['custom']['bridge_opts']) class ConfigApplier(object): @@ -93,12 +103,11 @@ self.setIfaceMtu(iface.name, iface.mtu) self.ifup(iface) - def addBridge(self, bridge): - self.ip.create(kind='bridge', ifname=bridge.name).commit() - - def addBridgePort(self, bridge): - with self.ip.interfaces[bridge.name] as i: - i.add_port(self.ip.interfaces[bridge.port.name]) + def addBridge(self, bridge, **opts): + with self.ip.create(kind='bridge', ifname=bridge.name) as i: + if bridge.port: + bridge.port.configure(**opts) + i.add_port(self.ip.interfaces[bridge.port.name]) def removeBridge(self, bridge): with self.ip.interfaces[bridge.name] as i: -- To view, visit http://gerrit.ovirt.org/31201 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I3f3bf85f161e498f396e3cf130fb8308ae932860 Gerrit-PatchSet: 1 Gerrit-Project: vdsm Gerrit-Branch: master Gerrit-Owner: Petr Horáček <[email protected]> _______________________________________________ vdsm-patches mailing list [email protected] https://lists.fedorahosted.org/mailman/listinfo/vdsm-patches
