gecko-dev/taskcluster/taskgraph/transforms/visual_metrics.py
Barret Rennie a9de9d21e2 Bug 1563090 - Fetch visual metrics task definition from a template r=nalexander,tomprince,ahal
The `./mach try {fuzzy,chooser}` commands now support a `--visual-metrics-jobs`
option which can be used to pass the job descriptions to the visual-metrics
task.

Differential Revision: https://phabricator.services.mozilla.com/D41878

--HG--
extra : moz-landing-system : lando
2019-09-04 16:42:45 +00:00

31 lines
986 B
Python

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
"""
These transformations take a task description for a visual metrics task and
add the necessary environment variables to run on the given inputs.
"""
from __future__ import absolute_import, print_function, unicode_literals
import json
from taskgraph.transforms.base import TransformSequence
transforms = TransformSequence()
@transforms.add
def set_visual_metrics_jobs(config, jobs):
"""Set the visual metrics configuration for the given jobs."""
vismet_jobs = config.params['try_task_config'].get('visual-metrics-jobs')
if vismet_jobs:
vismet_jobs = json.dumps(vismet_jobs)
for job in jobs:
if vismet_jobs:
job['task']['payload'].setdefault('env', {}).update(
VISUAL_METRICS_JOBS_JSON=vismet_jobs)
yield job