# Assemble a list of builds from a single build spec
def interpret_build(build, param_names, current_concrete_build={}, concrete_build_list=[]):
+
if (param_names==[]):
concrete_build_list.extend([current_concrete_build])
else:
def process_builds (builds, build_names, default_build):
for build_name in build_names:
build = complete_build_spec_with_defaults (builds[build_name], default_build)
- concrete_builds_without_deps = interpret_build (build, build.keys())
- concrete_builds = map(lambda cb: reduce_dependencies(cb), concrete_builds_without_deps)
- for concrete_build in concrete_builds:
- build_commandline = concrete_build_to_commandline(concrete_build)
- os.system(build_commandline)
+ concrete_builds_without_deps = interpret_build (build, build.keys(), {}, [])
+ concrete_builds = map(reduce_dependencies, concrete_builds_without_deps)
+ commandlines = map(concrete_build_to_commandline, concrete_builds)
+ for commandline in commandlines:
+ os.system(commandline)
def main():
config_file = '/etc/build-conf-planetlab.py'