Add missing params to launcher.
Change-Id: Iddc4f508fa2425c31369c84f63d3bcf8df5e0887
diff --git a/zuul/launcher/jenkins.py b/zuul/launcher/jenkins.py
index 1c6cb6c..1ddf7d9 100644
--- a/zuul/launcher/jenkins.py
+++ b/zuul/launcher/jenkins.py
@@ -137,7 +137,14 @@
self.log.info("Launch job %s for change %s with dependent changes %s" % (
job, change, dependent_changes))
uuid = str(uuid1())
- params = dict(UUID=uuid)
+ dependent_changes_str = '^'.join(
+ ['%s:%s:%s' % (c.project.name, c.branch, c.refspec)
+ for c in dependent_changes])
+ params = dict(UUID=uuid,
+ GERRIT_PROJECT=change.project.name,
+ GERRIT_BRANCH=change.branch,
+ GERRIT_REFSPEC=change.refspec,
+ DEPENDENT_CHANGES=dependent_changes_str)
build = Build(job, uuid)
self.builds[uuid] = build
# We can get the started notification on another thread before this is done
diff --git a/zuul/model.py b/zuul/model.py
index ac64761..aafcdd6 100644
--- a/zuul/model.py
+++ b/zuul/model.py
@@ -136,11 +136,13 @@
return tree.getJobs()
class Change(object):
- def __init__(self, queue_name, project, number, patchset):
+ def __init__(self, queue_name, project, branch, number, patchset, refspec):
self.queue_name = queue_name
self.project = project
+ self.branch = branch
self.number = number
self.patchset = patchset
+ self.refspec = refspec
self.jobs = {}
self.job_urls = {}
self.change_ahead = None
@@ -241,6 +243,7 @@
self.project_name = None
self.change_number = None
self.patch_number = None
+ self.refspec = None
self.approvals = []
self.branch = None
self.ref = None
diff --git a/zuul/scheduler.py b/zuul/scheduler.py
index c6570c2..0760c28 100644
--- a/zuul/scheduler.py
+++ b/zuul/scheduler.py
@@ -160,8 +160,9 @@
self.log.debug("Event %s ignored by %s" % (event, manager))
continue
if event.change_number:
- change = Change(manager.name, project,
- event.change_number, event.patch_number)
+ change = Change(manager.name, project, event.branch,
+ event.change_number, event.patch_number,
+ event.refspec)
self.log.info("Adding %s, %s to to %s" % (
project, change, manager))
manager.addChange(change)
diff --git a/zuul/trigger/gerrit.py b/zuul/trigger/gerrit.py
index 8708207..36b1618 100644
--- a/zuul/trigger/gerrit.py
+++ b/zuul/trigger/gerrit.py
@@ -40,6 +40,7 @@
patchset = data.get('patchSet')
if patchset:
event.patch_number = patchset.get('number')
+ event.refspec = patchset.get('ref')
event.approvals = data.get('approvals')
self.sched.addEvent(event)