diff options
Diffstat (limited to 'taskcluster/taskgraph/transforms/upload_symbols.py')
-rw-r--r-- | taskcluster/taskgraph/transforms/upload_symbols.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/taskcluster/taskgraph/transforms/upload_symbols.py b/taskcluster/taskgraph/transforms/upload_symbols.py new file mode 100644 index 000000000..9b4884a97 --- /dev/null +++ b/taskcluster/taskgraph/transforms/upload_symbols.py @@ -0,0 +1,36 @@ +# 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/. +""" +Transform the upload-symbols task description template, + taskcluster/ci/upload-symbols/job-template.yml +into an actual task description. +""" + +from __future__ import absolute_import, print_function, unicode_literals + +from taskgraph.transforms.base import TransformSequence + + +transforms = TransformSequence() + + +@transforms.add +def fill_template(config, tasks): + for task in tasks: + # Fill out the dynamic fields in the task description + task['label'] = task['build-label'] + '-upload-symbols' + task['dependencies'] = {'build': task['build-label']} + task['worker']['env']['GECKO_HEAD_REPOSITORY'] = config.params['head_repository'] + task['worker']['env']['GECKO_HEAD_REV'] = config.params['head_rev'] + + build_platform, build_type = task['build-platform'].split('/') + attributes = task.setdefault('attributes', {}) + attributes['build_platform'] = build_platform + attributes['build_type'] = build_type + + # clear out the stuff that's not part of a task description + del task['build-label'] + del task['build-platform'] + + yield task |