Start the monitoring and node daemons together
authorMichele Tartara <mtartara@google.com>
Mon, 13 May 2013 14:00:17 +0000 (14:00 +0000)
committerMichele Tartara <mtartara@google.com>
Tue, 14 May 2013 16:59:07 +0000 (17:59 +0100)
Add the monitoring daemon to the command starting the node daemon, given that
they both have to be started on all nodes.

Note that daemon-util only supports starting one daemon at the time, so the
actual command has to be composed as a sequence of two different daemon-util
invocations.

Also, the monitoring daemon invocation is conditional, depending on whether it
was enabled at configure time.

Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>

lib/tools/node_daemon_setup.py

index 28bcba0..9048ace 100644 (file)
@@ -216,12 +216,17 @@ def Main():
         not opts.dry_run):
       logging.info("Restarting node daemon ...")
 
-      cmd = ("%s stop-all; %s start %s" %
-             (pathutils.DAEMON_UTIL, pathutils.DAEMON_UTIL, constants.NODED))
+      stop_cmd = "%s stop-all" % pathutils.DAEMON_UTIL
+      noded_cmd = "%s start %s" % (pathutils.DAEMON_UTIL, constants.NODED)
+      mond_cmd = ""
+      if constants.ENABLE_MOND:
+        mond_cmd = "%s start %s" % (pathutils.DAEMON_UTIL, constants.MOND)
+
+      cmd = "; ".join([stop_cmd, noded_cmd, mond_cmd])
 
       result = utils.RunCmd(cmd, interactive=True)
       if result.failed:
-        raise SetupError("Could not start the node daemon, command '%s'"
+        raise SetupError("Could not start the node daemons, command '%s'"
                          " failed: %s" % (result.cmd, result.fail_reason))
 
     logging.info("Node daemon successfully configured")