Add missing params to launcher.

Change-Id: Iddc4f508fa2425c31369c84f63d3bcf8df5e0887
This commit is contained in:
James E. Blair 2012-05-30 09:41:16 -07:00
parent 61da08b268
commit a03262c814
4 changed files with 16 additions and 4 deletions

View File

@ -137,7 +137,14 @@ class Jenkins(object):
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

View File

@ -136,11 +136,13 @@ class Project(object):
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 @@ class TriggerEvent(object):
self.project_name = None
self.change_number = None
self.patch_number = None
self.refspec = None
self.approvals = []
self.branch = None
self.ref = None

View File

@ -160,8 +160,9 @@ class Scheduler(object):
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)

View File

@ -40,6 +40,7 @@ class GerritEventConnector(threading.Thread):
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)