From 8979196a7448011345c62ec7ca6572ef93caf71b Mon Sep 17 00:00:00 2001
From: Michael Hanselmann <hansmi@google.com>
Date: Thu, 30 Jul 2009 16:37:29 +0200
Subject: [PATCH] Add RPC calls to modify storage fields

Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
---
 daemons/ganeti-noded |  8 ++++++++
 lib/rpc.py           | 11 ++++++++++-
 2 files changed, 18 insertions(+), 1 deletion(-)

diff --git a/daemons/ganeti-noded b/daemons/ganeti-noded
index db3c7aa88..d34c05a55 100755
--- a/daemons/ganeti-noded
+++ b/daemons/ganeti-noded
@@ -365,6 +365,14 @@ class NodeHttpServer(http.server.HttpServer):
     (su_name, su_args, name, fields) = params
     return storage.GetStorage(su_name, *su_args).List(name, fields)
 
+  @staticmethod
+  def perspective_storage_modify(params):
+    """Modify a storage unit.
+
+    """
+    (su_name, su_args, name, changes) = params
+    return storage.GetStorage(su_name, *su_args).Modify(name, changes)
+
   # bridge  --------------------------
 
   @staticmethod
diff --git a/lib/rpc.py b/lib/rpc.py
index a46444bad..562301395 100644
--- a/lib/rpc.py
+++ b/lib/rpc.py
@@ -433,7 +433,7 @@ class RpcRunner(object):
     return self._MultiNodeCall(node_list, "vg_list", [])
 
   def call_storage_list(self, node_list, su_name, su_args, name, fields):
-    """Get list of storage units..
+    """Get list of storage units.
 
     This is a multi-node call.
 
@@ -441,6 +441,15 @@ class RpcRunner(object):
     return self._MultiNodeCall(node_list, "storage_list",
                                [su_name, su_args, name, fields])
 
+  def call_storage_modify(self, node, su_name, su_args, name, changes):
+    """Modify a storage unit.
+
+    This is a single-node call.
+
+    """
+    return self._SingleNodeCall(node, "storage_modify",
+                                [su_name, su_args, name, changes])
+
   def call_bridges_exist(self, node, bridges_list):
     """Checks if a node has all the bridges given.
 
-- 
GitLab