summaryrefslogtreecommitdiff
path: root/jenkinstool
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2012-08-12 20:33:07 +0100
committerLars Wirzenius <liw@liw.fi>2012-08-12 20:33:07 +0100
commit8c88338793117fb877b95f29a3ec42005adce2c0 (patch)
tree7df100db789e981d1482d94e540bbb92896ea807 /jenkinstool
parent46837b617fa82ead542ac7d28d7b41010258c60c (diff)
downloadjenkinstool-8c88338793117fb877b95f29a3ec42005adce2c0.tar.gz
Order everything linearly; initialize reprepro's apt repo
Linear ordering is a simple way to guarantee correctness. If and when I get enough horsepower to run many jobs simultaneously, I'll set up the proper trigger graph.
Diffstat (limited to 'jenkinstool')
-rwxr-xr-xjenkinstool20
1 files changed, 9 insertions, 11 deletions
diff --git a/jenkinstool b/jenkinstool
index dc64b32..1c28ba7 100755
--- a/jenkinstool
+++ b/jenkinstool
@@ -68,21 +68,20 @@ class JobGenerator(object):
jobs = [trigger]
reprepro = self.reprepro_setup_job(config)
- trigger.add_build_trigger(reprepro.job_id())
jobs.append(reprepro)
for host in config['hosts']:
jc = self.pbuilder_create_job(host)
- trigger.add_build_trigger(jc.job_id())
jobs.append(jc)
for project in config['projects']:
- first_in_project = True
for jc in self.generate_project(config, project):
jobs.append(jc)
- if first_in_project:
- reprepro.add_build_trigger(jc.job_id())
- first_in_project = False
+
+ prev = jobs[0]
+ for jc in jobs[1:]:
+ prev.add_build_trigger(jc.job_id())
+ prev = jc
for jc in jobs:
yield jc.job_id(), jc.tostring()
@@ -156,6 +155,10 @@ end
'dists': ' '.join(dists),
}
+ script += '''
+reprepro -b "$base" export
+'''
+
jc.add_shell_command(script)
return jc
@@ -212,11 +215,6 @@ fi
jobs.append(self.process_incoming_job(
config, project, 'deb_%s' % host['name']))
- for i in range(1, len(jobs)):
- prev = jobs[i-1]
- this = jobs[i]
- prev.add_build_trigger(this.job_id())
-
return jobs
def build_job(self, host, project):