3 builder class for the tinderbox target
6 from catalyst_support import *
7 from generic_stage_target import *
9 class tinderbox_target(generic_stage_target):
10 def __init__(self,spec,addlargs):
11 self.required_values=["tinderbox/packages"]
12 self.valid_values=self.required_values[:]
13 self.valid_values.extend(["tinderbox/use"])
14 generic_stage_target.__init__(self,spec,addlargs)
18 # example call: "grp.sh run xmms vim sys-apps/gleep"
20 if os.path.exists(self.settings["controller_file"]):
21 cmd("/bin/bash "+self.settings["controller_file"]+" run "+\
22 list_bashify(self.settings["tinderbox/packages"]),"run script failed.",env=self.env)
26 raise CatalystError,"Tinderbox aborting due to error."
28 def set_cleanables(self):
29 self.settings["cleanables"]=["/etc/resolv.conf","/var/tmp/*","/root/*",\
31 def set_action_sequence(self):
32 #Default action sequence for run method
33 self.settings["action_sequence"]=["unpack","unpack_snapshot",\
34 "config_profile_link","setup_confdir","bind","chroot_setup",\
35 "setup_environment","run_local","preclean","unbind","clean",\
39 foo.update({"tinderbox":tinderbox_target})