Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/devbot/config.py
diff options
context:
space:
mode:
Diffstat (limited to 'devbot/config.py')
-rw-r--r--devbot/config.py23
1 files changed, 16 insertions, 7 deletions
diff --git a/devbot/config.py b/devbot/config.py
index 8dc320a..85ed9d3 100644
--- a/devbot/config.py
+++ b/devbot/config.py
@@ -25,6 +25,19 @@ if use_lib64:
else:
system_lib_dir = "/usr/lib"
+class Module:
+ def __init__(self, info):
+ self.name = info["name"]
+ self.repo = info["repo"]
+ self.branch = info.get("branch", "master")
+ self.out_of_source = info.get("out-of-source", True)
+
+ def get_source_dir(self):
+ return os.path.join(source_dir, self.name)
+
+ def get_build_dir(self):
+ return os.path.join(build_dir, self.name)
+
def set_config_dir(dir):
global config_dir
config_dir = dir
@@ -94,12 +107,6 @@ def get_pref(name):
return prefs[name]
-def get_module_source_dir(module):
- return os.path.join(source_dir, module["name"])
-
-def get_module_build_dir(module):
- return os.path.join(build_dir, module["name"])
-
def load_packages():
packages = {}
@@ -134,6 +141,8 @@ def load_modules():
for file in module_files:
path = os.path.join(config_dir, "modules", file)
- modules.extend(json.load(open(path)))
+
+ for info in json.load(open(path)):
+ modules.append(Module(info))
return modules