Change in vdsm[master]: fixed a key error in _delNetwork

ibarkan at redhat.com ibarkan at redhat.com
Tue Jan 6 06:33:49 UTC 2015


Ido Barkan has uploaded a new change for review.

Change subject: fixed a key error in _delNetwork
......................................................................

fixed a key error in _delNetwork

When _delNetwork was called from _delBrokenNetwork it's netinfo
is adapted so it would be able to remove the broken netwrok.
This fixes a missing key in the broken network description
dictionary.

Change-Id: I09d32946cf2667b1888b1d84d0eab2d7118a42b0
Signed-off-by: Ido Barkan <ibarkan at redhat.com>
---
M tests/functional/networkTests.py
M vdsm/network/api.py
2 files changed, 23 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/98/36598/1

diff --git a/tests/functional/networkTests.py b/tests/functional/networkTests.py
index bc008d1..b4abff7 100644
--- a/tests/functional/networkTests.py
+++ b/tests/functional/networkTests.py
@@ -1825,6 +1825,27 @@
             self.assertEqual(status, SUCCESS, msg)
             self.assertNetworkDoesntExist(NETWORK_NAME)
 
+    def testBrokenBridgedNetwork(self):
+        with dummyIf(1) as (nic,):
+            network = {NETWORK_NAME: {'nic': nic, 'vlan': VLAN_ID,
+                                      'bridged': True}}
+            status, msg = self.vdsm_net.setupNetworks(network, {}, NOCHK)
+            self.assertEqual(status, SUCCESS, msg)
+            self.assertNetworkExists(NETWORK_NAME)
+
+            ipwrapper.linkDel(NETWORK_NAME)
+            self.vdsm_net.refreshNetinfo()
+            self.assertNotIn(NETWORK_NAME, self.vdsm_net.netinfo.networks)
+
+            status, msg = self.vdsm_net.setupNetworks(network, {}, NOCHK)
+            self.assertEqual(status, SUCCESS, msg)
+            self.assertNetworkExists(NETWORK_NAME)
+
+            network[NETWORK_NAME] = {'remove': True}
+            status, msg = self.vdsm_net.setupNetworks(network, {}, NOCHK)
+            self.assertEqual(status, SUCCESS, msg)
+            self.assertNetworkDoesntExist(NETWORK_NAME)
+
     @cleanupNet
     def testReconfigureBrNetWithVanishedPort(self):
         """Test for re-defining a bridged network for which the device
diff --git a/vdsm/network/api.py b/vdsm/network/api.py
index 19f5f10..6a8a6b5 100755
--- a/vdsm/network/api.py
+++ b/vdsm/network/api.py
@@ -388,6 +388,8 @@
     deleted via _delNetwork.'''
     _netinfo = netinfo.NetInfo()
     _netinfo.networks[network] = netAttr
+    _netinfo.networks[network]['bootproto4'] = 'none'
+
     if _netinfo.networks[network]['bridged']:
         try:
             nets = configurator.runningConfig.networks


-- 
To view, visit http://gerrit.ovirt.org/36598
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I09d32946cf2667b1888b1d84d0eab2d7118a42b0
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Ido Barkan <ibarkan at redhat.com>


More information about the vdsm-patches mailing list