From a005729c352292b257df424f87512f69dba39286 Mon Sep 17 00:00:00 2001 From: Sapan Bhatia Date: Thu, 23 Jul 2009 18:48:37 +0000 Subject: [PATCH] Dependecies within configurations --- build_conf_planetlab.py | 10 ++++++++-- run_nightlies.py | 9 ++++++--- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/build_conf_planetlab.py b/build_conf_planetlab.py index 0da358ea..6eb296a7 100755 --- a/build_conf_planetlab.py +++ b/build_conf_planetlab.py @@ -5,7 +5,7 @@ marcs_trunk_build = { 'distro':['centos5','f8'], 'personality':['linux32','linux64'], 'test': 0, - 'release':['k22'] + 'release':['k22'], } sapans_k27_build = { @@ -17,6 +17,9 @@ sapans_k27_build = { } ### + +personality_to_arch={'linux32':'i386','linux64':'x86_64'} + __default_build__ = { 'path':'/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin', 'sh':'/bin/bash', @@ -25,6 +28,9 @@ __default_build__ = { 'webpath':'/vservers/build.planet-lab.org/var/www/html/install-rpms/archive', 'pldistro':'planetlab', 'date':'2009-07-21', - 'svnpath':'http://svn.planet-lab.org/svn/build/trunk' + 'svnpath':'http://svn.planet-lab.org/svn/build/trunk', + 'personality':'linux32', +### Define lambdas at the end, because they may need the above values to be filled in for their evaluation + 'arch':lambda concrete_build: personality_to_arch[concrete_build['personality']] } diff --git a/run_nightlies.py b/run_nightlies.py index fe9d8a68..035806d5 100755 --- a/run_nightlies.py +++ b/run_nightlies.py @@ -15,7 +15,10 @@ def interpret_build(build, param_names, current_concrete_build={}, concrete_buil new_concrete_build = current_concrete_build.copy() new_concrete_build[cur_param_name] = value concrete_build_list = interpret_build(build, remaining_param_names, new_concrete_build, concrete_build_list) - + elif (type(cur_param)==type(lambda x:x)): + # XXX Assumes that the value is behind it + current_concrete_build[cur_param_name] = cur_param(current_concrete_build) + concrete_build_list = interpret_build(build, remaining_param_names, current_concrete_build,concrete_build_list) # If not, just tack on the value and move on else: current_concrete_build[cur_param_name] = cur_param @@ -35,7 +38,7 @@ def complete_build_spec_with_defaults (build, default_build): # Turn a concrete build into a commandline def concrete_build_to_commandline(concrete_build): - cmdline = """%(shell) \ + cmdline = """%(sh) \ %(vbuildinghtly) \ -b %(pldistro)-%(fcdistro)-%(arch)-%(myplc_version)-%(release)-%(date) \ -f %(distro) \ @@ -61,7 +64,7 @@ def process_builds (builds, build_names, default_build): print build_commandline def main(): - config_file = '/etc/build_conf.py' + config_file = './build_conf_planetlab.py' builds = {} try: execfile(config_file, builds) -- 2.47.0