aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'master/custom/merge_settings.py')
-rw-r--r--master/custom/merge_settings.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/master/custom/merge_settings.py b/master/custom/merge_settings.py
new file mode 100644
index 0000000..469e8d5
--- /dev/null
+++ b/master/custom/merge_settings.py
@@ -0,0 +1,18 @@
+import os
+# Import/merge settings from sub-modules
+for file in os.listdir('.'):
+ if os.path.isdir(file):
+ try:
+ _settings = __import__(file, fromlist=['settings']).settings
+ except ImportError:
+ continue
+ for entry in dir(_settings):
+ action = '+='
+ if entry[0] == '_' or not entry[0].isupper():
+ continue
+ if not locals().has_key(entry):
+ action = '='
+ value = getattr(_settings, entry)
+ if isinstance(value, str):
+ value = "'%s'" % value
+ exec("%s %s %s" % (entry, action, value))