Bug 1395717 - Use filename source-test tasks are defined in as part of their label, r=dustin
This creates a new "job-from" field that contains the relative filename the job was defined in. The filename is relative to 'config.path'. If the task came from the 'jobs' key defined in kind.yml, this field will be set to 'kind.yml'. MozReview-Commit-ID: 9e1tEb6XuZT
This commit is contained in:
@@ -5,7 +5,6 @@
|
||||
from __future__ import absolute_import, print_function, unicode_literals
|
||||
|
||||
import logging
|
||||
import itertools
|
||||
|
||||
from ..util.templates import merge
|
||||
from ..util.yaml import load_yaml
|
||||
@@ -33,15 +32,19 @@ def loader(kind, path, config, params, loaded_tasks):
|
||||
"""
|
||||
def jobs():
|
||||
defaults = config.get('job-defaults')
|
||||
jobs = config.get('jobs', {}).iteritems()
|
||||
jobs_from = itertools.chain.from_iterable(
|
||||
load_yaml(path, filename).iteritems()
|
||||
for filename in config.get('jobs-from', {}))
|
||||
for name, job in itertools.chain(jobs, jobs_from):
|
||||
for name, job in config.get('jobs', {}).iteritems():
|
||||
if defaults:
|
||||
job = merge(defaults, job)
|
||||
job['job-from'] = 'kind.yml'
|
||||
yield name, job
|
||||
|
||||
for filename in config.get('jobs-from', []):
|
||||
for name, job in load_yaml(path, filename).iteritems():
|
||||
if defaults:
|
||||
job = merge(defaults, job)
|
||||
job['job-from'] = filename
|
||||
yield name, job
|
||||
|
||||
for name, job in jobs():
|
||||
job['name'] = name
|
||||
logger.debug("Generating tasks for {} {}".format(kind, name))
|
||||
|
||||
Reference in New Issue
Block a user