From 4e804cc3f84f44615e9269c01cf51ea32d9b38d4 Mon Sep 17 00:00:00 2001
From: Anael Beutot <anael.beutot@smartjog.com>
Date: Mon, 13 Aug 2012 13:56:02 +0200
Subject: [PATCH] Fix daemonization, close stderr/stdout in non debug mode

---
 bin/cc-node | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/bin/cc-node b/bin/cc-node
index 7ec631e..0916560 100755
--- a/bin/cc-node
+++ b/bin/cc-node
@@ -10,6 +10,7 @@ from daemon import DaemonContext
 
 from cloudcontrol.node import __version__
 from cloudcontrol.node.node import NodeLoop
+from cloudcontrol.node.config import NodeConfigParser
 
 
 DEFAULT_CONFIG_FILE = '/etc/cc-node.conf'
@@ -33,6 +34,7 @@ if options.daemonize and not options.pidfile:
 options.config = abspath(options.config)
 if not isfile(options.config):
     sys.exit(u'Please supply a valid path to configuration file...')
+config = NodeConfigParser(options.config)
 
 
 # take care of pid file if daemon
@@ -42,10 +44,17 @@ if options.daemonize:
 else:
     files_preserve = None
 
+if config.debug:
+    stderr = sys.stderr
+    stdout = sys.stdout
+else:
+    stderr = None
+    stdout = None
+
 with DaemonContext(detach_process=options.daemonize,
                    files_preserve=files_preserve,
-                   stderr=sys.stderr,
-                   stdout=sys.stdout):
+                   stderr=stderr,
+                   stdout=stdout):
 
     # take care of pidfile
     if options.daemonize:
-- 
GitLab