From 165284de4e03fb72fb9e4ca811fbcc77618ff02d Mon Sep 17 00:00:00 2001
From: Igor Lvovsky <ilvovsky@redhat.com>
Date: Mon, 4 Jun 2012 11:02:56 +0300
Subject: [PATCH 04/17] Iterates over delete candidates networks only once
Change-Id: Iec45c1cb3d76a70555e256f96c983e13a0518cbe
Signed-off-by: Igor Lvovsky <ilvovsky@redhat.com>
Reviewed-on: http://gerrit.ovirt.org/5204
Reviewed-by: Livnat Peer <lpeer@redhat.com>
Reviewed-by: Shu Ming <shuming@linux.vnet.ibm.com>
Tested-by: Dan Kenigsberg <danken@redhat.com>
Reviewed-by: Dan Kenigsberg <danken@redhat.com>
Reviewed-on: http://gerrit.ovirt.org/5546
Tested-by: Federico Simoncelli <fsimonce@redhat.com>
---
vdsm/configNetwork.py | 26 ++++++++++++--------------
1 files changed, 12 insertions(+), 14 deletions(-)
diff --git a/vdsm/configNetwork.py b/vdsm/configNetwork.py
index b37ff0f..3f2e5fe 100755
--- a/vdsm/configNetwork.py
+++ b/vdsm/configNetwork.py
@@ -1010,26 +1010,23 @@ def setupNetworks(networks={}, bondings={}, **options):
networksAdded = []
#bondingNetworks = {} # Reminder TODO
- logger.info("Setting up network")
- logger.debug("Setting up network according to configuration: networks:%r, bondings:%r, options:%r" % (networks, bondings, options))
+ logger.debug("Setting up network according to configuration: "
+ "networks:%r, bondings:%r, options:%r" % (networks,
+ bondings, options))
force = options.get('force', False)
if not utils.tobool(force):
logging.debug("Validating configuration")
- _validateNetworkSetup(dict(networks), dict(bondings), explicitBonding=options.get('explicitBonding', False))
+ _validateNetworkSetup(dict(networks), dict(bondings),
+ explicitBonding=options.get('explicitBonding',
+ False))
logger.debug("Applying...")
try:
- delnetworks = {}
- for network, networkAttrs in networks.iteritems():
+ # Remove networks with 'remove' attribute
+ for network, networkAttrs in networks.items():
if 'remove' in networkAttrs:
- delnetworks[network] = networkAttrs
-
- for network, networkAttrs in delnetworks.iteritems():
- if networkAttrs.pop('remove', False):
- assert not networkAttrs
-
- logger.debug('Removing network %r'%network)
+ logger.debug("Removing network %r" % network)
delNetwork(network, configWriter=configWriter, force=force)
del networks[network]
@@ -1041,12 +1038,13 @@ def setupNetworks(networks={}, bondings={}, **options):
d = dict(networkAttrs)
if 'bonding' in d:
d['nics'] = bondings[d['bonding']]['nics']
- d['bondingOptions'] = bondings[d['bonding']].get('options', None)
+ d['bondingOptions'] = bondings[d['bonding']].get('options',
+ None)
else:
d['nics'] = [d.pop('nic')]
d['force'] = force
- logger.debug('Adding network %r'%network)
+ logger.debug("Adding network %r" % network)
addNetwork(network, configWriter=configWriter, **d)
if utils.tobool(options.get('connectivityCheck', True)):
--
1.7.1