1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
import json
import os
from devbot import distro
config_dir = None
logs_dir = None
commands_dir = None
install_dir = None
source_dir = None
build_dir = None
lib_dir = None
devbot_dir = None
share_dir = None
bin_dir = None
etc_dir = None
dep_files = None
module_files = None
package_files = None
use_lib64 = os.uname()[4] == "x86_64"
if use_lib64:
system_lib_dir = "/usr/lib64"
else:
system_lib_dir = "/usr/lib"
def set_config_dir(dir):
global config_dir
config_dir = dir
def set_logs_dir(dir):
global logs_dir
logs_dir = dir
def set_install_dir(dir):
global install_dir
global devbot_dir
global share_dir
global bin_dir
global etc_dir
global lib_dir
install_dir = dir
devbot_dir = os.path.join(install_dir, "devbot")
share_dir = os.path.join(install_dir, "share")
bin_dir = os.path.join(install_dir, "bin")
etc_dir = os.path.join(install_dir, "etc")
if use_lib64:
lib_dir = os.path.join(install_dir, "lib64")
else:
lib_dir = os.path.join(install_dir, "lib")
def set_source_dir(dir):
global source_dir
source_dir = dir
def set_build_dir(dir):
global build_dir
build_dir = dir
def set_commands_dir(dir):
global commands_dir
commands_dir = dir
def set_dep_files(files):
global dep_files
dep_files = files
def set_module_files(files):
global module_files
module_files = files
def set_package_files(files):
global package_files
package_files = files
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 = {}
for file in package_files:
path = os.path.join(config_dir, "packages", "%s.json" % file)
packages.update(json.load(open(path)))
return packages
def load_prerequisites():
path = os.path.join(config_dir, "deps", "prerequisites.json")
return json.load(open(path))
def load_checks():
version = distro.get_system_version()
checks = []
for file in dep_files:
path = os.path.join(config_dir, "deps", "%s.json" % file)
checks.extend(json.load(open(path)))
return checks
def load_modules():
version = distro.get_system_version()
module_files = ["system-%s.json" % version,
"sugar.json",
"activities.json"]
modules = []
for file in module_files:
path = os.path.join(config_dir, "modules", file)
modules.extend(json.load(open(path)))
return modules
|