From e81eef56ea737f109f7b80c1f3dbcd9376b3c224 Mon Sep 17 00:00:00 2001
From: Dimitris Aragiorgis <dimara@grnet.gr>
Date: Mon, 29 Oct 2012 20:39:58 +0200
Subject: [PATCH] Replace string values with proper constants

_UnlockedCommitIp is used either for releasing or reserving an
IP inside a network. New constants RELEASE_ACTION/RESERVE_ACTION
are used to decide which is the case.

Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Reviewed-by: Iustin Pop <iustin@google.com>
---
 lib/config.py    | 15 +++++++++------
 lib/constants.py |  3 +++
 2 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/lib/config.py b/lib/config.py
index bb4adcaf6..d2b9c5633 100644
--- a/lib/config.py
+++ b/lib/config.py
@@ -342,9 +342,9 @@ class ConfigWriter:
     """
     nobj = self._UnlockedGetNetwork(net_uuid)
     pool = network.AddressPool(nobj)
-    if action == 'reserve':
+    if action == constants.RESERVE_ACTION:
       pool.Reserve(address)
-    elif action == 'release':
+    elif action == constants.RELEASE_ACTION:
       pool.Release(address)
 
   def _UnlockedReleaseIp(self, net_uuid, address, ec_id):
@@ -354,7 +354,8 @@ class ConfigWriter:
     as reserved.
 
     """
-    self._temporary_ips.Reserve(ec_id, ('release', address, net_uuid))
+    self._temporary_ips.Reserve(ec_id,
+                                (constants.RELEASE_ACTION, address, net_uuid))
 
   @locking.ssynchronized(_config_lock, shared=1)
   def ReleaseIp(self, net, address, ec_id):
@@ -382,7 +383,7 @@ class ConfigWriter:
         ip = gen_free()
       except StopIteration:
         raise errors.ReservationError("Cannot generate IP. Network is full")
-      return ("reserve", ip, net_uuid)
+      return (constants.RESERVE_ACTION, ip, net_uuid)
 
     _, address, _ = self._temporary_ips.Generate([], gen_one, ec_id)
     return address
@@ -400,7 +401,9 @@ class ConfigWriter:
     if isreserved:
       raise errors.ReservationError("IP address already in use")
 
-    return self._temporary_ips.Reserve(ec_id, ('reserve', address, net_uuid))
+    return self._temporary_ips.Reserve(ec_id,
+                                       (constants.RESERVE_ACTION,
+                                        address, net_uuid))
 
   @locking.ssynchronized(_config_lock, shared=1)
   def ReserveIp(self, net, address, ec_id):
@@ -1452,7 +1455,7 @@ class ConfigWriter:
         net_uuid = self._UnlockedLookupNetwork(nic.network)
         if net_uuid:
           # Return all IP addresses to the respective address pools
-          self._UnlockedCommitIp('release', net_uuid, nic.ip)
+          self._UnlockedCommitIp(constants.RELEASE_ACTION, net_uuid, nic.ip)
 
     del self._config_data.instances[instance_name]
     self._config_data.cluster.serial_no += 1
diff --git a/lib/constants.py b/lib/constants.py
index 6e23fac26..3f32d5e7d 100644
--- a/lib/constants.py
+++ b/lib/constants.py
@@ -1072,6 +1072,9 @@ NIC_IP_POOL = "pool"
 
 NIC_VALID_MODES = frozenset([NIC_MODE_BRIDGED, NIC_MODE_ROUTED])
 
+RESERVE_ACTION = 'reserve'
+RELEASE_ACTION = 'release'
+
 # An extra description of the network.
 # Can be used by hooks/kvm-vif-bridge to apply different rules
 NETWORK_TYPE_PRIVATE = "private"
-- 
GitLab