From ee501db1b85addbf981782924cb43bba1a78dddd Mon Sep 17 00:00:00 2001
From: Michael Hanselmann <hansmi@google.com>
Date: Thu, 4 Oct 2012 03:30:09 +0200
Subject: [PATCH] Move a function from backend to ssconf
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

The β€œWriteSsconfFiles” function is used to write ssconf files. By moving
it we can avoid importing backend into bootstrap. The latter is imported
by CLI programs and backend doesn't have much to do with them.

Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Iustin Pop <iustin@google.com>
---
 lib/backend.py      | 9 ---------
 lib/bootstrap.py    | 3 +--
 lib/server/noded.py | 3 ++-
 lib/ssconf.py       | 9 +++++++++
 4 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/lib/backend.py b/lib/backend.py
index 912cd8c18..dc1378ffc 100644
--- a/lib/backend.py
+++ b/lib/backend.py
@@ -2128,15 +2128,6 @@ def RunOob(oob_program, command, node, timeout):
   return result.stdout
 
 
-def WriteSsconfFiles(values):
-  """Update all ssconf files.
-
-  Wrapper around the SimpleStore.WriteFiles.
-
-  """
-  ssconf.SimpleStore().WriteFiles(values)
-
-
 def _OSOndiskAPIVersion(os_dir):
   """Compute and return the API version of a given OS.
 
diff --git a/lib/bootstrap.py b/lib/bootstrap.py
index 7d25b4945..dfd415b3e 100644
--- a/lib/bootstrap.py
+++ b/lib/bootstrap.py
@@ -41,7 +41,6 @@ from ganeti import serializer
 from ganeti import hypervisor
 from ganeti import bdev
 from ganeti import netutils
-from ganeti import backend
 from ganeti import luxi
 from ganeti import jstore
 from ganeti import pathutils
@@ -549,7 +548,7 @@ def InitCluster(cluster_name, mac_prefix, # pylint: disable=R0913, R0914
   cfg = config.ConfigWriter(offline=True)
   ssh.WriteKnownHostsFile(cfg, pathutils.SSH_KNOWN_HOSTS_FILE)
   cfg.Update(cfg.GetClusterInfo(), logging.error)
-  backend.WriteSsconfFiles(cfg.GetSsconfValues())
+  ssconf.WriteSsconfFiles(cfg.GetSsconfValues())
 
   # set up the inter-node password and certificate
   _InitGanetiServerSetup(hostname.name)
diff --git a/lib/server/noded.py b/lib/server/noded.py
index 7a4144949..9561f0e2b 100644
--- a/lib/server/noded.py
+++ b/lib/server/noded.py
@@ -49,6 +49,7 @@ from ganeti import storage
 from ganeti import serializer
 from ganeti import netutils
 from ganeti import pathutils
+from ganeti import ssconf
 
 import ganeti.http.server # pylint: disable=W0611
 
@@ -807,7 +808,7 @@ class NodeRequestHandler(http.server.HttpServerHandler):
 
     """
     (values,) = params
-    return backend.WriteSsconfFiles(values)
+    return ssconf.WriteSsconfFiles(values)
 
   # os -----------------------
 
diff --git a/lib/ssconf.py b/lib/ssconf.py
index ae12149c6..ce7f876a5 100644
--- a/lib/ssconf.py
+++ b/lib/ssconf.py
@@ -511,6 +511,15 @@ class SimpleStore(object):
                                       " family: %s" % err)
 
 
+def WriteSsconfFiles(values):
+  """Update all ssconf files.
+
+  Wrapper around L{SimpleStore.WriteFiles}.
+
+  """
+  ssconf.SimpleStore().WriteFiles(values)
+
+
 def GetMasterAndMyself(ss=None):
   """Get the master node and my own hostname.
 
-- 
GitLab