8 def get_autoupdate_projects(jjb_dir, projects):
9 """Get list of projects that should be auto-updated."""
11 for project in projects:
12 template = os.path.join(jjb_dir, project, "%s.yaml" % project)
13 if os.path.isfile(template):
14 with open(template, 'r') as f:
15 first_line = f.readline()
16 if first_line.startswith("# REMOVE THIS LINE IF"):
17 project_list.append(project)
22 def update_templates(projects):
23 for project in projects:
25 # If project has customized variables
26 cfg_file = "jjb/%s/%s.cfg" % (project, project)
27 parameters = ["python scripts/jjb-init-project.py"]
28 if os.path.isfile(cfg_file):
29 stream = open(cfg_file, "r")
30 cfg = yaml.load(stream)
31 for k, v in cfg.items():
32 if k == "MVN_GOALS" and v is not None:
33 parameters.append("-g '%s'" % v)
34 elif k == "MVN_OPTS" and v is not None:
35 parameters.append("-o '%s'" % v)
37 parameters.append(project)
38 cmd = " ".join(parameters)
42 os.system("python scripts/jjb-init-project.py %s" % project)
49 all_projects = [d for d in os.listdir(jjb_dir)
50 if os.path.isdir(os.path.join(jjb_dir, d))]
51 auto_update_projects = get_autoupdate_projects(jjb_dir, all_projects)
52 update_templates(auto_update_projects)