forked from mirrors/gecko-dev
Depends on D150414 Differential Revision: https://phabricator.services.mozilla.com/D150418
29 lines
1,018 B
Python
29 lines
1,018 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/.
|
|
"""
|
|
Find upstream artifact task.
|
|
"""
|
|
|
|
from taskgraph.transforms.base import TransformSequence
|
|
|
|
transforms = TransformSequence()
|
|
|
|
|
|
@transforms.add
|
|
def find_upstream_artifact_task(config, jobs):
|
|
for job in jobs:
|
|
dep_job = None
|
|
if job.get("dependent-tasks"):
|
|
dep_labels = [l for l in job["dependent-tasks"].keys()]
|
|
for label in dep_labels:
|
|
if "notarization-part-1" in label:
|
|
assert (
|
|
dep_job is None
|
|
), "Can't determine whether " "{} or {} is dep_job!".format(
|
|
dep_job.label, label
|
|
)
|
|
dep_job = job["dependent-tasks"][label]
|
|
if dep_job is not None:
|
|
job["upstream-artifact-task"] = dep_job
|
|
yield job
|