Bug 1428915 - Remove job name whitelist. r?mshal
This was useful when we still had buildbot-based build jobs, but all
it achieves nowadays is add friction when adding new build jobs on
taskcluster.
--- a/taskcluster/ci/config.yml
+++ b/taskcluster/ci/config.yml
@@ -60,151 +60,16 @@ treeherder:
index:
products:
- 'firefox'
- 'fennec'
- 'mobile'
- 'static-analysis'
- 'devedition'
- 'source'
- job-names:
- # This list contains a whitelist of gecko.v2 index route job names. The intent
- # of this whitelist is to raise an alarm when new jobs are added. If those jobs
- # already run in Buildbot, then it's important that the generated index routes
- # match (and that only one of Buildbot and TaskCluster be tier-1 at any time).
- # If the jobs are new and never ran in Buildbot, then their job name can be added
- # here without any further fuss.
- #
- # Once all jobs have been ported from Buildbot, this list can be removed.
- - 'android-aarch64-opt'
- - 'android-api-16-debug'
- - 'android-api-16-gradle-opt'
- - 'android-api-16-old-id-opt'
- - 'android-api-16-opt'
- - 'android-checkstyle'
- - 'android-dependencies'
- - 'android-findbugs'
- - 'android-lint'
- - 'android-test'
- - 'android-x86-old-id-opt'
- - 'android-x86-opt'
- - 'browser-haz-debug'
- - 'linux-debug'
- - 'linux-devedition'
- - 'linux-devedition-opt'
- - 'linux-devedition-nightly-repackage'
- - 'linux-devedition-nightly-repackage-signing'
- - 'linux-nightly-repackage'
- - 'linux-nightly-repackage-signing'
- - 'linux-opt'
- - 'linux-pgo'
- - 'linux-rusttests-opt'
- - 'linux-rusttests-debug'
- - 'linux64-add-on-devel'
- - 'linux64-artifact-opt'
- - 'linux64-asan-debug'
- - 'linux64-asan-opt'
- - 'linux64-asan-reporter-opt'
- - 'linux64-base-toolchains-debug'
- - 'linux64-base-toolchains-opt'
- - 'linux64-fuzzing-asan-opt'
- - 'linux64-fuzzing-debug'
- - 'linux64-ccov-opt'
- - 'linux64-clang-tidy'
- - 'linux64-debug'
- - 'linux64-devedition'
- - 'linux64-devedition-opt'
- - 'linux64-devedition-nightly-repackage'
- - 'linux64-devedition-nightly-repackage-signing'
- - 'linux64-jsdcov-opt'
- - 'linux64-nightly-repackage'
- - 'linux64-nightly-repackage-signing'
- - 'linux64-noopt-debug'
- - 'linux64-opt'
- - 'linux64-pgo'
- - 'linux64-rusttests-opt'
- - 'linux64-rusttests-debug'
- - 'linux64-searchfox-debug'
- - 'linux64-st-an-debug'
- - 'linux64-st-an-opt'
- - 'linux64-valgrind-opt'
- - 'linux64-dmd-opt'
- - 'linux64-source-opt'
- - 'linux64-devedition-source-opt'
- - 'linux64-fennec-source-opt'
- - 'macosx64-add-on-devel'
- - 'macosx64-clang-tidy'
- - 'macosx64-debug'
- - 'macosx64-devedition-opt'
- - 'macosx64-nightly-repackage'
- - 'macosx64-nightly-repackage-signing'
- - 'macosx64-noopt-debug'
- - 'macosx64-opt'
- - 'macosx64-devedition-nightly-repackage'
- - 'macosx64-devedition-nightly-repackage-signing'
- - 'macosx64-st-an-debug'
- - 'macosx64-st-an-opt'
- - 'macosx64-searchfox-debug'
- - 'macosx64-dmd-opt'
- - 'shell-haz-debug'
- - 'sm-arm-sim-linux32-debug'
- - 'sm-arm64-sim-linux64-debug'
- - 'sm-asan-linux64-opt'
- - 'sm-compacting-linux64-debug'
- - 'sm-compacting-win32-debug'
- - 'sm-fuzzing-linux64'
- - 'sm-mozjs-sys-linux64-debug'
- - 'sm-msan-linux64-opt'
- - 'sm-nojit-linux64-opt'
- - 'sm-nonunified-linux64-debug'
- - 'sm-package-linux64-opt'
- - 'sm-plain-linux64-opt'
- - 'sm-plain-win32-opt'
- - 'sm-plain-linux64-debug'
- - 'sm-plain-win32-debug'
- - 'sm-rootanalysis-linux64-debug'
- - 'sm-rust-bindings-linux64-debug'
- - 'sm-tsan-linux64-opt'
- - 'source-bugzilla-info'
- - 'win32-add-on-devel'
- - 'win32-clang-tidy'
- - 'win32-debug'
- - 'win32-devedition-nightly-repackage'
- - 'win32-devedition-nightly-repackage-signing'
- - 'win32-devedition-opt'
- - 'win32-nightly-repackage'
- - 'win32-nightly-repackage-signing'
- - 'win32-noopt-debug'
- - 'win32-opt'
- - 'win32-pgo'
- - 'win32-rusttests-opt'
- - 'win32-searchfox-debug'
- - 'win32-st-an-debug'
- - 'win32-st-an-opt'
- - 'win32-dmd-opt'
- - 'win64-ccov-debug'
- - 'win64-add-on-devel'
- - 'win64-clang-tidy'
- - 'win64-debug'
- - 'win64-devedition-opt'
- - 'win64-devedition-nightly-repackage'
- - 'win64-devedition-nightly-repackage-signing'
- - 'win64-nightly-repackage'
- - 'win64-nightly-repackage-signing'
- - 'win64-noopt-debug'
- - 'win64-opt'
- - 'win64-pgo'
- - 'win64-rusttests-opt'
- - 'win64-st-an-debug'
- - 'win64-st-an-opt'
- - 'win64-asan-debug'
- - 'win64-asan-opt'
- - 'win64-dmd-opt'
- - 'win32-mingw32-debug'
-
try:
# We have a few platforms for which we want to do some "extra" builds, or at
# least build-ish things. Sort of. Anyway, these other things are implemented
# as different "platforms". These do *not* automatically ride along with "-p
# all"
ridealong-builds:
'android-api-16':
--- a/taskcluster/taskgraph/config.py
+++ b/taskcluster/taskgraph/config.py
@@ -1,30 +1,28 @@
# 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/.
from __future__ import absolute_import, print_function, unicode_literals
from .util.schema import validate_schema, Schema
-from voluptuous import Required, Optional
+from voluptuous import Required
graph_config_schema = Schema({
# The trust-domain for this graph.
# (See https://firefox-source-docs.mozilla.org/taskcluster/taskcluster/taskgraph.html#taskgraph-trust-domain) # noqa
Required('trust-domain'): basestring,
Required('treeherder'): {
# Mapping of treeherder group symbols to descriptive names
Required('group-names'): {basestring: basestring}
},
Required('index'): {
Required('products'): [basestring],
- # A whitelist of gecko.v2 index route job names.
- Optional('job-names'): [basestring],
},
Required('try'): {
# We have a few platforms for which we want to do some "extra" builds, or at
# least build-ish things. Sort of. Anyway, these other things are implemented
# as different "platforms". These do *not* automatically ride along with "-p
# all"
Required('ridealong-builds', default={}): {basestring: [basestring]},
},
--- a/taskcluster/taskgraph/transforms/task.py
+++ b/taskcluster/taskgraph/transforms/task.py
@@ -711,35 +711,23 @@ def superseder_url(config, task):
size = task['coalesce']['size']
return SUPERSEDER_URL.format(
age=age,
size=size,
key=key
)
-JOB_NAME_WHITELIST_ERROR = """\
-The gecko-v2 job name {job_name} is not in the whitelist in `taskcluster/ci/config.yml`.
-If this job runs on Buildbot, please ensure that the job names match between
-Buildbot and TaskCluster, then add the job name to the whitelist. If this is a
-new job, there is nothing to check -- just add the job to the whitelist.
-"""
-
UNSUPPORTED_PRODUCT_ERROR = """\
The gecko-v2 product {product} is not in the list of configured products in
`taskcluster/ci/config.yml'.
"""
def verify_index(config, index):
- if 'job-names' in config.graph_config['index']:
- job_name = index['job-name']
- if job_name not in config.graph_config['index']['job-names']:
- raise Exception(JOB_NAME_WHITELIST_ERROR.format(job_name=job_name))
-
product = index['product']
if product not in config.graph_config['index']['products']:
raise Exception(UNSUPPORTED_PRODUCT_ERROR.format(product=product))
@payload_builder('docker-worker')
def build_docker_worker_payload(config, task, task_def):
worker = task['worker']