[Kimchi-devel] [Patch v2 1/4] Move configuration parsing to config.py

Mark Wu wudxw at linux.vnet.ibm.com
Tue Dec 24 02:41:36 UTC 2013


The configruation is also needed for other code except starting kimchi
server. So it should be moved to a separate module, config.py. Then the
configuration can be accessed directly by importing config module.

Signed-off-by: Mark Wu <wudxw at linux.vnet.ibm.com>
---
 src/kimchi/config.py.in | 23 ++++++++++++++++++++---
 src/kimchid.in          | 20 +-------------------
 2 files changed, 21 insertions(+), 22 deletions(-)

diff --git a/src/kimchi/config.py.in b/src/kimchi/config.py.in
index f3c408a..49d42db 100644
--- a/src/kimchi/config.py.in
+++ b/src/kimchi/config.py.in
@@ -25,11 +25,9 @@
 import libvirt
 import os
 import platform
-
-
+from ConfigParser import SafeConfigParser
 from glob import iglob
 
-
 from kimchi.xmlutils import xpath_get_text
 
 
@@ -166,5 +164,24 @@ def get_plugin_tab_xml(name):
     return os.path.join(_get_plugin_ui_dir(name), 'config/tab-ext.xml')
 
 
+CONFIG_FILE = "%s/kimchi.conf" % get_config_dir()
+DEFAULT_LOG_LEVEL = "debug"
+
+config = SafeConfigParser()
+config.add_section("server")
+config.set("server", "host", "0.0.0.0")
+config.set("server", "port", "8000")
+config.set("server", "ssl_port", "8001")
+config.set("server", "ssl_cert", "")
+config.set("server", "ssl_key", "")
+config.set("server", "environment", "development")
+config.add_section("logging")
+config.set("logging", "log_dir", get_default_log_dir())
+config.set("logging", "log_level", DEFAULT_LOG_LEVEL)
+
+if os.path.exists(CONFIG_FILE):
+    config.read(CONFIG_FILE)
+
+
 if __name__ == '__main__':
     print get_prefix()
diff --git a/src/kimchid.in b/src/kimchid.in
index 7865713..548fa52 100644
--- a/src/kimchid.in
+++ b/src/kimchid.in
@@ -33,31 +33,13 @@ import kimchi.config
 if kimchi.config.without_installation():
     sys.path.append(kimchi.config.get_prefix())
 
-from ConfigParser import SafeConfigParser
+from kimchi.config import config
 from optparse import OptionParser
 
 ACCESS_LOG = "kimchi-access.log"
 ERROR_LOG = "kimchi-error.log"
-CONFIG_FILE = "%s/kimchi.conf" % kimchi.config.get_config_dir()
-DEFAULT_LOG_DIR = kimchi.config.get_default_log_dir()
-DEFAULT_LOG_LEVEL = "debug"
 
 def main(options):
-    config = SafeConfigParser()
-    config.add_section("server")
-    config.set("server", "host", "0.0.0.0")
-    config.set("server", "port", "8000")
-    config.set("server", "ssl_port", "8001")
-    config.set("server", "ssl_cert", "")
-    config.set("server", "ssl_key", "")
-    config.set("server", "environment", "development")
-    config.add_section("logging")
-    config.set("logging", "log_dir", DEFAULT_LOG_DIR)
-    config.set("logging", "log_level", DEFAULT_LOG_LEVEL)
-
-    if os.path.exists(CONFIG_FILE):
-        config.read(CONFIG_FILE)
-
     host = config.get("server", "host")
     port = config.get("server", "port")
     ssl_port = config.get("server", "ssl_port")
-- 
1.8.3.1




More information about the Kimchi-devel mailing list