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.py14
1 files changed, 11 insertions, 3 deletions
diff --git a/python/skytools/scripting.py b/python/skytools/scripting.py
index 0ba801b3..4520d672 100644
--- a/python/skytools/scripting.py
+++ b/python/skytools/scripting.py
@@ -321,7 +321,11 @@ class DBScript(object):
self.send_signal(signal.SIGHUP)
def load_config(self):
- """Loads and returns skytools.Config instance."""
+ """Loads and returns skytools.Config instance.
+
+ By default it uses first command-line argument as config
+ file name. Can be overrided.
+ """
conf_file = self.args[0]
return Config(self.service_name, conf_file)
@@ -398,8 +402,12 @@ class DBScript(object):
def reload(self):
"Reload config."
- self.cf.reload()
- self.job_name = self.cf.get("job_name", self.service_name)
+ # avoid double loading on startup
+ if not self.cf:
+ self.cf = self.load_config()
+ else:
+ self.cf.reload()
+ self.job_name = self.cf.get("job_name")
self.pidfile = self.cf.getfile("pidfile", '')
self.loop_delay = self.cf.getfloat("loop_delay", 1.0)