Bug 1378454 - Add predictable routes to repackage and repackage-signing tasks r=Callek

MozReview-Commit-ID: Kv59SWBdbz5

--HG--
extra : source : 5d540400c15c04ff354f191defc1c5337bc5b9ae
This commit is contained in:
Rail Aliiev 2017-07-07 13:58:06 -04:00
Родитель 8e560af8c9
Коммит 517ce83aa7
8 изменённых файлов: 61 добавлений и 0 удалений

Просмотреть файл

@ -6,6 +6,7 @@ loader: taskgraph.loader.single_dep:loader
transforms:
- taskgraph.transforms.repackage_signing:transforms
- taskgraph.transforms.repackage_routes:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:

Просмотреть файл

@ -6,6 +6,7 @@ loader: taskgraph.loader.single_dep:loader
transforms:
- taskgraph.transforms.repackage:transforms
- taskgraph.transforms.repackage_routes:transforms
- taskgraph.transforms.job:transforms
- taskgraph.transforms.task:transforms

Просмотреть файл

@ -160,3 +160,8 @@ specific locale involved. Currently this is only in l10n versions of the
signed
======
Signals that the output of this task contains signed artifacts.
repackage_type
==============
This is the type of repackage. Can be ``repackage`` or
``repacakge_signing``.

Просмотреть файл

@ -52,6 +52,8 @@ JOB_NAME_WHITELIST = set([
'macosx64-add-on-devel',
'macosx64-clang-tidy',
'macosx64-debug',
'macosx64-nightly-repackage',
'macosx64-nightly-repackage-signing',
'macosx64-noopt-debug',
'macosx64-opt',
'macosx64-devedition-opt',
@ -82,6 +84,8 @@ JOB_NAME_WHITELIST = set([
'win64-add-on-devel',
'win64-clang-tidy',
'win64-debug',
'win64-nightly-repackage',
'win64-nightly-repackage-signing',
'win64-noopt-debug',
'win64-opt',
'win64-pgo',

Просмотреть файл

@ -113,6 +113,7 @@ def make_job_description(config, jobs):
'nightly': dep_job.attributes.get('nightly', False),
'build_platform': dep_job.attributes.get('build_platform'),
'build_type': dep_job.attributes.get('build_type'),
'repackage_type': 'repackage',
}
if job.get('locale'):
attributes['locale'] = job['locale']

Просмотреть файл

@ -0,0 +1,45 @@
# 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/.
"""
Add indexes to repackage kinds
"""
from __future__ import absolute_import, print_function, unicode_literals
from taskgraph.transforms.base import TransformSequence
from taskgraph.util.schema import validate_schema
from taskgraph.transforms.job import job_description_schema
transforms = TransformSequence()
@transforms.add
def validate(config, jobs):
for job in jobs:
label = job['label']
yield validate_schema(
job_description_schema, job,
"In repackage-signing ({!r} kind) task for {!r}:".format(config.kind, label))
@transforms.add
def add_indexes(config, jobs):
for job in jobs:
repackage_type = job['attributes'].get('repackage_type')
if repackage_type:
build_platform = job['attributes']['build_platform']
job_name = '{}-{}'.format(build_platform, repackage_type)
product = job.get('index', {}).get('product', 'firefox')
index_type = 'generic'
if job['attributes'].get('nightly'):
index_type = 'nightly'
if job['attributes'].get('locale'):
index_type = 'l10n'
job['index'] = {
'job-name': job_name,
'product': product,
'type': index_type
}
yield job

Просмотреть файл

@ -61,6 +61,7 @@ def make_repackage_signing_description(config, jobs):
'nightly': dep_job.attributes.get('nightly', False),
'build_platform': dep_job.attributes.get('build_platform'),
'build_type': dep_job.attributes.get('build_type'),
'repackage_type': 'repackage-signing',
}
locale_str = ""
if dep_job.attributes.get('locale'):

Просмотреть файл

@ -874,6 +874,9 @@ def add_l10n_index_routes(config, task, force_locale=None):
locales = task['attributes'].get('chunk_locales',
task['attributes'].get('all_locales'))
# Some tasks has only one locale set
if task['attributes'].get('locale'):
locales = [task['attributes']['locale']]
if force_locale:
# Used for en-US and multi-locale