From: Dimitris Aragiorgis Date: Tue, 19 Feb 2013 16:28:42 +0000 (+0200) Subject: Minor fixes regarding nic.network change X-Git-Tag: v2.7.0beta2~53 X-Git-Url: https://code.grnet.gr/git/ganeti-local/commitdiff_plain/9394f4d1d52710e83508884a4193aab7b47a2fe1 Minor fixes regarding nic.network change Make LookupNetwork() return None in case target is None. This fixes Issue 380. Rapi passes network=None and the lookup should not fail. Make network client aware of new nic.network.gnt-network info shows the IPs of each instance inside the network. It parses nic.networks field of QueryInstances() output, which now is a list of uuids an not names. Signed-off-by: Dimitris Aragiorgis Reviewed-by: Helga Velroyen --- diff --git a/lib/client/gnt_network.py b/lib/client/gnt_network.py index b2d6360..60d4dee 100644 --- a/lib/client/gnt_network.py +++ b/lib/client/gnt_network.py @@ -250,7 +250,7 @@ def ShowNetworkConfig(_, args): l = lambda value: ", ".join(str(idx) + ":" + str(ip) for idx, (ip, net) in enumerate(value) - if net == name) + if net == uuid) ToStdout(" %s : %s", inst, l(zip(ips, networks))) else: diff --git a/lib/config.py b/lib/config.py index ee26de6..13f9823 100644 --- a/lib/config.py +++ b/lib/config.py @@ -1450,10 +1450,9 @@ class ConfigWriter: instance = self._UnlockedGetInstanceInfo(instance_name) for nic in instance.nics: - if nic.network is not None and nic.ip is not None: - net_uuid = self._UnlockedLookupNetwork(nic.network) + if nic.network and nic.ip: # Return all IP addresses to the respective address pools - self._UnlockedCommitIp(constants.RELEASE_ACTION, net_uuid, nic.ip) + self._UnlockedCommitIp(constants.RELEASE_ACTION, nic.network, nic.ip) del self._config_data.instances[instance_name] self._config_data.cluster.serial_no += 1 @@ -2503,6 +2502,8 @@ class ConfigWriter: @raises errors.OpPrereqError: when the target network cannot be found """ + if target is None: + return None if target in self._config_data.networks: return target for net in self._config_data.networks.values():