summaryrefslogtreecommitdiff
path: root/python/skytools/scripting.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/skytools/scripting.py')
-rw-r--r--python/skytools/scripting.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/python/skytools/scripting.py b/python/skytools/scripting.py
index e6d7abfa..14f4d694 100644
--- a/python/skytools/scripting.py
+++ b/python/skytools/scripting.py
@@ -380,6 +380,12 @@ class DBScript(object):
self.print_ini()
sys.exit(0)
+ self.cf_operride = {}
+ if self.options.set:
+ for a in self.options.set:
+ k, v = a.split('=', 1)
+ self.cf_operride[k.strip()] = v.strip()
+
# read config file
self.reload()
@@ -452,7 +458,7 @@ class DBScript(object):
print("need config file, use --help for help.")
sys.exit(1)
conf_file = self.args[0]
- return Config(self.service_name, conf_file)
+ return Config(self.service_name, conf_file, override = self.cf_operride)
def init_optparse(self, parser = None):
"""Initialize a OptionParser() instance that will be used to
@@ -482,6 +488,8 @@ class DBScript(object):
help = "print version info and exit")
p.add_option("", "--ini", action="store_true",
help = "display sample ini file")
+ p.add_option("", "--set", action="append",
+ help = "override config setting (--set 'PARAM=VAL')")
# control options
g = optparse.OptionGroup(p, 'control running process')