FYI: pushed
On Wed, Jan 30, 2013 at 6:11 PM, Helga Velroyen <[email protected]> wrote: > LGTM, thanks. > > Since the previous patch breaks the Haskell compability, I will push this > patch with the patch that fixes it. > > Cheers, > Helga > > > On Tue, Jan 29, 2013 at 9:40 AM, Dimitris Aragiorgis <[email protected]>wrote: > >> Make _UnlockedLookupNetwork() raise OpPrereqError (instead of returning >> None) in case it does not find the requested network. Remove useless and >> duplicate code such as: >> >> if net_uuid is None: >> raise... >> >> Signed-off-by: Dimitris Aragiorgis <[email protected]> >> --- >> lib/cmdlib.py | 57 >> ++++++++++++++++++--------------------------------------- >> lib/config.py | 30 +++++++++--------------------- >> 2 files changed, 27 insertions(+), 60 deletions(-) >> >> diff --git a/lib/cmdlib.py b/lib/cmdlib.py >> index 5798c6f..6556f70 100644 >> --- a/lib/cmdlib.py >> +++ b/lib/cmdlib.py >> @@ -1551,20 +1551,16 @@ def _NICToTuple(lu, nic): >> @param nic: nic to convert to hooks tuple >> >> """ >> - ip = nic.ip >> - mac = nic.mac >> cluster = lu.cfg.GetClusterInfo() >> filled_params = cluster.SimpleFillNIC(nic.nicparams) >> mode = filled_params[constants.NIC_MODE] >> link = filled_params[constants.NIC_LINK] >> - net = nic.network >> netinfo = None >> - if net: >> - net_uuid = lu.cfg.LookupNetwork(net) >> - if net_uuid: >> - nobj = lu.cfg.GetNetwork(net_uuid) >> - netinfo = objects.Network.ToDict(nobj) >> - return (ip, mac, mode, link, net, netinfo) >> + if nic.network: >> + net_uuid = lu.cfg.LookupNetwork(nic.network) >> + netinfo = objects.Network.ToDict(lu.cfg.GetNetwork(net_uuid)) >> + >> + return (nic.ip, nic.mac, mode, link, nic.network, netinfo) >> >> >> def _NICListToTuple(lu, nics): >> @@ -13460,12 +13456,12 @@ class LUInstanceSetParams(LogicalUnit): >> elif new_net != old_net: >> >> def get_net_prefix(net): >> + mac_prefix = None >> if net: >> uuid = self.cfg.LookupNetwork(net) >> - if uuid: >> - nobj = self.cfg.GetNetwork(uuid) >> - return nobj.mac_prefix >> - return None >> + mac_prefix = self.cfg.GetNetwork(uuid).mac_prefix >> + >> + return mac_prefix >> >> new_prefix = get_net_prefix(new_net) >> old_prefix = get_net_prefix(old_net) >> @@ -16215,11 +16211,15 @@ class LUNetworkAdd(LogicalUnit): >> raise errors.OpPrereqError("Network must be given", >> errors.ECODE_INVAL) >> >> - uuid = self.cfg.LookupNetwork(self.op.network_name) >> - >> - if uuid: >> - raise errors.OpPrereqError(("Network with name '%s' already >> exists" % >> - self.op.network_name), >> errors.ECODE_EXISTS) >> + try: >> + existing_uuid = self.cfg.LookupNetwork(self.op.network_name) >> + except errors.OpPrereqError: >> + pass >> + else: >> + raise errors.OpPrereqError("Desired network name '%s' already >> exists as a" >> + " network (UUID: %s)" % >> + (self.op.network_name, existing_uuid), >> + errors.ECODE_EXISTS) >> >> # Check tag validity >> for tag in self.op.tags: >> @@ -16307,10 +16307,6 @@ class LUNetworkRemove(LogicalUnit): >> def ExpandNames(self): >> self.network_uuid = self.cfg.LookupNetwork(self.op.network_name) >> >> - if not self.network_uuid: >> - raise errors.OpPrereqError(("Network '%s' not found" % >> - self.op.network_name), >> errors.ECODE_NOENT) >> - >> self.share_locks[locking.LEVEL_NODEGROUP] = 1 >> self.needed_locks = { >> locking.LEVEL_NETWORK: [self.network_uuid], >> @@ -16379,9 +16375,6 @@ class LUNetworkSetParams(LogicalUnit): >> >> def ExpandNames(self): >> self.network_uuid = self.cfg.LookupNetwork(self.op.network_name) >> - if self.network_uuid is None: >> - raise errors.OpPrereqError(("Network '%s' not found" % >> - self.op.network_name), >> errors.ECODE_NOENT) >> >> self.needed_locks = { >> locking.LEVEL_NETWORK: [self.network_uuid], >> @@ -16654,14 +16647,7 @@ class LUNetworkConnect(LogicalUnit): >> self.network_link = self.op.network_link >> >> self.network_uuid = self.cfg.LookupNetwork(self.network_name) >> - if self.network_uuid is None: >> - raise errors.OpPrereqError("Network '%s' does not exist" % >> - self.network_name, errors.ECODE_NOENT) >> - >> self.group_uuid = self.cfg.LookupNodeGroup(self.group_name) >> - if self.group_uuid is None: >> - raise errors.OpPrereqError("Group '%s' does not exist" % >> - self.group_name, errors.ECODE_NOENT) >> >> self.needed_locks = { >> locking.LEVEL_INSTANCE: [], >> @@ -16790,14 +16776,7 @@ class LUNetworkDisconnect(LogicalUnit): >> self.group_name = self.op.group_name >> >> self.network_uuid = self.cfg.LookupNetwork(self.network_name) >> - if self.network_uuid is None: >> - raise errors.OpPrereqError("Network '%s' does not exist" % >> - self.network_name, errors.ECODE_NOENT) >> - >> self.group_uuid = self.cfg.LookupNodeGroup(self.group_name) >> - if self.group_uuid is None: >> - raise errors.OpPrereqError("Group '%s' does not exist" % >> - self.group_name, errors.ECODE_NOENT) >> >> self.needed_locks = { >> locking.LEVEL_INSTANCE: [], >> diff --git a/lib/config.py b/lib/config.py >> index 9d87c2b..55bef8d 100644 >> --- a/lib/config.py >> +++ b/lib/config.py >> @@ -276,10 +276,9 @@ class ConfigWriter: >> prefix = None >> if net: >> net_uuid = self._UnlockedLookupNetwork(net) >> - if net_uuid: >> - nobj = self._UnlockedGetNetwork(net_uuid) >> - if nobj.mac_prefix: >> - prefix = nobj.mac_prefix >> + nobj = self._UnlockedGetNetwork(net_uuid) >> + if nobj.mac_prefix: >> + prefix = nobj.mac_prefix >> >> return prefix >> >> @@ -365,8 +364,7 @@ class ConfigWriter: >> >> """ >> net_uuid = self._UnlockedLookupNetwork(net) >> - if net_uuid: >> - self._UnlockedReleaseIp(net_uuid, address, ec_id) >> + self._UnlockedReleaseIp(net_uuid, address, ec_id) >> >> @locking.ssynchronized(_config_lock, shared=1) >> def GenerateIp(self, net, ec_id): >> @@ -410,8 +408,7 @@ class ConfigWriter: >> >> """ >> net_uuid = self._UnlockedLookupNetwork(net) >> - if net_uuid: >> - return self._UnlockedReserveIp(net_uuid, address, ec_id) >> + return self._UnlockedReserveIp(net_uuid, address, ec_id) >> >> @locking.ssynchronized(_config_lock, shared=1) >> def ReserveLV(self, lv_name, ec_id): >> @@ -1452,9 +1449,8 @@ class ConfigWriter: >> for nic in instance.nics: >> if nic.network is not None and nic.ip is not None: >> net_uuid = self._UnlockedLookupNetwork(nic.network) >> - if net_uuid: >> - # Return all IP addresses to the respective address pools >> - self._UnlockedCommitIp(constants.RELEASE_ACTION, net_uuid, >> nic.ip) >> + # Return all IP addresses to the respective address pools >> + self._UnlockedCommitIp(constants.RELEASE_ACTION, net_uuid, >> nic.ip) >> >> del self._config_data.instances[instance_name] >> self._config_data.cluster.serial_no += 1 >> @@ -2469,12 +2465,6 @@ class ConfigWriter: >> if check_uuid: >> self._EnsureUUID(net, ec_id) >> >> - existing_uuid = self._UnlockedLookupNetwork(net.name) >> - if existing_uuid: >> - raise errors.OpPrereqError("Desired network name '%s' already" >> - " exists as a network (UUID: %s)" % >> - (net.name, existing_uuid), >> - errors.ECODE_EXISTS) >> net.serial_no = 1 >> self._config_data.networks[net.uuid] = net >> self._config_data.cluster.serial_no += 1 >> @@ -2494,7 +2484,8 @@ class ConfigWriter: >> for net in self._config_data.networks.values(): >> if net.name == target: >> return net.uuid >> - return None >> + raise errors.OpPrereqError("Network '%s' not found" % target, >> + errors.ECODE_NOENT) >> >> @locking.ssynchronized(_config_lock, shared=1) >> def LookupNetwork(self, target): >> @@ -2541,9 +2532,6 @@ class ConfigWriter: >> >> """ >> net_uuid = self._UnlockedLookupNetwork(net) >> - if net_uuid is None: >> - return None >> - >> node_info = self._UnlockedGetNodeInfo(node) >> nodegroup_info = self._UnlockedGetNodeGroup(node_info.group) >> netparams = nodegroup_info.networks.get(net_uuid, None) >> -- >> 1.7.10.4 >> >> -- >> You received this message because you are subscribed to the Google Groups >> "ganeti-devel" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> For more options, visit https://groups.google.com/groups/opt_out. >> >> >> >
