Bug 1829047 - do not schedule task if all tests are skipped. r=ahal
[gecko.git] / taskcluster / ci / config.yml
blob62231b159b250e7f22942eab3450fc3bcc8e78bb
1 # This Source Code Form is subject to the terms of the Mozilla Public
2 # License, v. 2.0. If a copy of the MPL was not distributed with this
3 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
4 ---
5 trust-domain: gecko
6 project-repo-param-prefix: ''
7 product-dir: 'browser'
8 treeherder:
9     group-names:
10         'cram': 'Cram tests'
11         'js-bench-sm': 'JavaScript shell benchmarks with Spidermonkey'
12         'js-bench-v8': 'JavaScript shell benchmarks with Google V8'
13         'node': 'Node tests'
14         'py3': 'Python 3 unit tests'
15         'A': 'Android Gradle tests'
16         'Bpgo': 'Profile-guided optimization builds'
17         'Btime': 'Browsertime performance tests on Firefox'
18         'Btime-cache': 'Browsertime performance tests on Firefox with populated bytecode cache.'
19         'Btime-1proc': 'Browsertime performance tests on Firefox without e10s'
20         'Btime-fis': 'Browsertime performance tests on Firefox with fission enabled'
21         'Btime-nofis': 'Browsertime tests on Firefox without fission enabled'
22         'Btime-P-nofis': 'Browsertime power tests on Firefox without fission enabled'
23         'Btime-Prof-nofis': 'Browsertime tests on Firefox with profiling and without fission enabled'
24         'Btime-P-nofis-refbrow': 'Browsertime Power Usage Tests on reference browser without fission enabled'
25         'Btime-P-nofis-fenix': 'Browsertime Power Usage Tests on Fenix without fission enabled'
26         'Btime-live-nofis-fenix': 'Browsertime tests on Fenix without fission enabled using live sites'
27         'Btime-nofis-fenix': 'Browsertime tests on Fenix without fission enabled'
28         'Btime-live-nofis': 'Browsertime tests on Firefox without fission enabled using live sites'
29         'Btime-nofis-refbrow': 'Browsertime tests on reference browser without fission enabled'
30         'Btime-live-nofis-ChR': 'Browsertime tests on Chrome without fission enabled using live sites'
31         'Btime-Prof': 'Browsertime performance tests on Firefox with Gecko Profiling'
32         'Btime-Prof-fis': 'Browsertime performance tests on Firefox with Gecko Profiling, fission enabled'
33         'Btime-Prof-1proc': 'Browsertime performance tests on Firefox with Gecko Profiling and without e10s'
34         'Btime-live': 'Browsertime performance tests on Firefox'
35         'Btime-live-fis': 'Browsertime performance tests on Firefox with fission enabled'
36         'Btime-live-fenix': 'Browsertime performance tests on Firefox'
37         'Btime-live-ChR': 'Browsertime performance tests on Firefox'
38         'Btime-live-Cr': 'Browsertime performance tests on Google Chromium'
39         'Btime-live-Saf': 'Browsertime performance tests on Safari'
40         'Btime-ChR': 'Browsertime performance tests on Google Chrome Release'
41         'Btime-nofis-ChR': 'Browsertime performance tests on Google Chrome Release without fission enabled'
42         'Btime-Cr': 'Browsertime performance tests on Google Chromium'
43         'Btime-P': 'Browsertime power tests on Firefox/Geckoview'
44         'Btime-P-fenix': 'Browsertime power tests on Fenix'
45         'Btime-P-refbrow': 'Browsertime power tests on reference browser'
46         'Btime-fenix': 'Browsertime performance tests on Fenix'
47         'Btime-refbrow': 'Browsertime performance tests on the reference browser'
48         'Btime-Saf': 'Browsertime performance tests on Safari'
49         'Btime-CaR': 'Browsertime performance tests on Chromium-as-Release'
50         'Fetch': 'Fetch and store content'
51         'Fxfn': 'Firefox functional tests'
52         'Fxfn-nofis': 'Firefox functional tests without fission enabled'
53         'Fxfn-fis': 'Firefox functional tests with fission enabled'
54         'l10n-bump': 'L10n Bumper'
55         'M': 'Mochitests'
56         'M-condprof': "Mochitests with conditioned profile"
57         'M-headless': 'Headless Mochitests'
58         'M-headless-nofis': 'Headless Mochitests without fission enabled.'
59         'M-headless-spi-nw': 'Headless Mochitests with fission and socketprocess networking.'
60         'M-headless-spi-nw-nofis': 'Headless Mochitests with fission and socketprocess networking without fission enabled.'
61         'M-http3': 'Mochitests with Http/3 server'
62         'M-aab': 'Mochitests with AAB test_runner.'
63         'M-aab-nofis': 'Mochitests with AAB test_runner without fission enabled.'
64         'M-1proc': 'Mochitests without e10s or fission'
65         'M-a11y-checks': 'Mochitests with accessibility checks enabled'
66         'M-a11y-checks-nofis': 'Mochitests with accessibility checks enabled and without fission enabled'
67         'M-a11y-no-cache': 'Mochitests with accessibility cache disabled'
68         'M-a11y-no-cache-1proc': 'Mochitests with accessibility cache, e10s, and fission disabled'
69         'M-xorig': 'Mochitests with cross-origin and fission enabled'
70         'M-gli': 'Mochitests with WebGL over IPC'
71         'M-gli-nofis': 'Mochitests with WebGL over IPC without fission enabled'
72         'M-nofis': 'Mochitests without fission enabled'
73         'M-spi': 'Mochitests with socket process'
74         'M-spi-nofis': 'Mochitests with socket process without fission enabled'
75         'M-spi-nw': 'Mochitests with networking on socket process'
76         'M-spi-nw-nofis': 'Mochitests with networking on socket process without fission enabled'
77         'M-spi-nw-1proc': 'Mochitests with networking on socket process without e10s'
78         'M-swr': 'Mochitests with software webrender enabled'
79         'M-swr-a11y-checks': 'Mochitests with software webrender and accessibility checks enabled'
80         'M-swr-a11y-checks-nofis': 'Mochitests with software webrender and accessibility checks enabled without fission enabled'
81         'M-swr-1proc': 'Mochitests with software webrender enabled without e10s'
82         'M-swr-nofis': 'Mochitests with software webrender without fission enabled'
83         'M-wmfme': 'Mochitests with Windows Media Foundation media engine enabled'
84         'M-f': 'Mochitest failures'
85         'M-dt-no-eft-nofis': 'DevTools Mochitests with EFT without fission enabled'
86         'M-msix': 'Mochitests from MSIX builds'
87         'MSI': 'Repack installers into MSIs'
88         'MSIs': 'Signing of Repacked installers of MSIs'
89         'MSIX': 'Repack into MSIX package'
90         'MSIXs': 'Signing of Repack into MSIX package'
91         'Pup': "Puppeteer tests"
92         'R': 'Reftests'
93         'R-fis': 'Reftests with fission enabled'
94         'R-nofis': 'Reftests without fission enabled'
95         'R-swr': 'Reftests with software webrender enabled'
96         'R-swr-nofis': 'Reftests with software webrender enabled without fission enabled'
97         'R-swr-fis': 'Reftests with software webrender with fission enabled'
98         'R-wr-dc0': 'Reftests with dcomp disabled'
99         'R-wr-dc1-p': 'Reftests with dcomp present but not overlays'
100         'R-wr-dc2-o': 'Reftests with dcomp overlays but not compositing'
101         'R-wr-dc3-c': 'Reftests with dcomp compositing'
102         'Rap': 'Raptor performance tests on Firefox'
103         'Rap-live': 'Raptor performance tests on Firefox with live sites'
104         'Rap-fis': 'Raptor performance tests on Firefox with fission enabled'
105         'Rap-Prof': 'Raptor performance tests on Firefox with Gecko Profiling'
106         'Rap-Prof-fis': 'Raptor performance tests on Firefox with Gecko Profiling'
107         'Rap-ChR': 'Raptor performance tests on Google Chrome Release'
108         'Rap-Cr': 'Raptor performance tests on Google Chromium'
109         'Rap-refbrow': 'Raptor performance tests on the reference browser'
110         'T': 'Talos performance tests'
111         'T-fis': 'Talos performance tests with fission enabled'
112         'T-gli': 'Talos performance tests with WebGL over IPC'
113         'T-gli-fis': 'Talos performance tests with WebGL over IPC with fission enabled'
114         'T-Prof': 'Talos performance tests on Firefox with Gecko Profiling'
115         'T-Prof-fis': 'Talos performance tests on Firefox with fission and Gecko Profiling'
116         'T-Prof-gli': 'Talos performance tests with WebGL over IPC and Gecko Profiling'
117         'T-Prof-gli-fis': 'Talos performance tests with WebGL over IPC and Gecko Profiling and fission enabled'
118         'T-swr': 'Talos performance tests with software webrender enabled'
119         'T-swr-fis': 'Talos performance tests with software webrender enabled'
120         'tt': 'Telemetry tests'
121         'tt-nofis': 'Telemetry tests without fission enabled'
122         'tt-fis': 'Telemetry tests with fission enabled'
123         'SY': 'Are we slim yet tests by TaskCluster'
124         'SY-fis': 'Are we slim yet tests by TaskCluster, fission enabled'
125         'W': 'Web platform tests'
126         'W-fis': 'Web platform tests with fission enabled'
127         'W-nofis': 'Web platform tests without fission enabled'
128         'W-headless-nofis': 'Headless web platform tests without fission enabled'
129         'W-headless': 'Headless web platform tests'
130         'W-swr-nofis': 'Web platform tests with software webrender enabled without fission enabled'
131         'W-swr': 'Web platform tests with software webrender enabled'
132         'W-b': 'Web platform tests (backlog)'
133         'W-b-nofis': 'Web platform tests (backlog) without fission enabled'
134         'X': 'Xpcshell tests'
135         'X-condprof': 'Xpcshell tests with a conditioned profile'
136         'X-nofis': 'Xpcshell tests without fission enabled'
137         'X-fis': 'Xpcshell tests with fission enabled'
138         'X-spi-nw': 'Xpcshell tests with networking on socket process'
139         'X-spi-nw-fis': 'Xpcshell tests with networking on socket process'
140         'X-spi-nw-nofis': 'Xpcshell tests with networking on socket process without fission enabled'
141         'X-f': 'Xpcshell tests that fail on a given config'
142         'X-f-spi-nw': 'Xpcshell tests that fail on a given config w/socket process'
143         'X-msix': 'Xpcshell tests on msix packages'
144         'L10n': 'Localised Repacks'
145         'L10n-Rpk': 'Localized Repackaged Repacks'
146         'deb-L10n': 'Localized Debian Repacks'
147         'BM': 'Beetmover'
148         'BMR': 'Beetmover repackages'
149         'BM-apt': 'Beetmover .deb packages'
150         'c-Up': 'Balrog submission of complete updates'
151         'css': 'Checksum signing for source'
152         'rs': 'Repackage signing'
153         'BMcs': 'Beetmover checksums'
154         'BMcslang': 'Beetmover checksums for language packs'
155         'BMcss': 'Beetmover checksums for source'
156         'Deb8': 'Packages for Debian 8'
157         'Deb8-32': 'Packages for Debian 8 32-bits'
158         'Deb9': 'Packages for Debian 9'
159         'Deb10': 'Packages for Debian 10'
160         'Deb11': 'Packages for Debian 11'
161         'Ub18': 'Packages for Ubuntu 18.04'
162         'Ub20': 'Packages for Ubuntu 20.04'
163         'I': 'Docker Image Builds'
164         'TA': 'Toolchain builds for Android'
165         'TL': 'Toolchain builds for Linux 64-bits'
166         'TL32': 'Toolchain builds for Linux 32-bits'
167         'TM': 'Toolchain builds for OSX'
168         'TMW': 'Toolchain builds for Windows MinGW'
169         'TW32': 'Toolchain builds for Windows 32-bits'
170         'TW64': 'Toolchain builds for Windows 64-bits'
171         'WMC32': 'MinGW-Clang builds for Windows 32-bits'
172         'WMC64': 'MinGW-Clang builds for Windows 64-bits'
173         'Searchfox': 'Searchfox builds'
174         'SM': 'Spidermonkey builds'
175         'p': 'Partial generation'
176         'ps': 'Partials signing'
177         'ms': 'Complete MAR signing'
178         'ms-stage': 'Autograph-stage MAR signing test'
179         'Rel': 'Release promotion'
180         'Snap': 'Snap image generation'
181         'Flatpak': 'Flatpak image generation'
182         'langpack': 'Langpack sigatures and uploads'
183         'TPS': 'Sync tests'
184         'UV': 'Update verify'
185         'pydep': 'python dependency update'
186         'WR': 'WebRender standalone'
187         'Wgpu': 'WebGPU standalone'
188         'cpp': 'C/C++ checks'
189         'pedantic': 'pedantic checks'
190         'text': 'Check on texts'
191         'misc': 'Misc checks'
192         'js': 'JavaScript checks'
193         'py': 'Python checks'
194         'java': 'Java checks'
195         'rust': 'Rust checks'
196         'Static-Analysis': 'Full tree static-analysis'
197         'SS': 'Shadow scheduler'
198         'Sentry': 'Sentry synchronization'
199         'test-info': 'Test manifest skip/fail information'
200         'condprof': 'Conditioned Profile Builder'
201         'doc': 'Documentation'
202         'GhS': 'GitHub Synchronization'
203         'perftest': 'Performance tests'
204         'perftest-detect': 'Performance regression detection tooling'
205         'perftest-chrome': 'Performance tests using Chrone'
206         'perftest-http3': 'Performance tests with HTTP/3'
207         'l10n': 'Localization checks'
208         'fxrec': 'Desktop startup recorder (fxrecord)'
209         'wc': 'webcompat'
210         'Boot': 'Bootstrap'
211         'Attr-L10n': 'Build Attribution'
213 index:
214     products:
215         - 'firefox'
216         - 'fennec'
217         - 'mobile'
218         - 'static-analysis'
219         - 'devedition'
220         - 'source'
221         - 'system-symbols'
222         - 'geckodriver'
224 try:
225     # We have a few platforms for which we want to do some "extra" builds, or at
226     # least build-ish things.  Sort of.  Anyway, these other things are implemented
227     # as different "platforms".  These do *not* automatically ride along with "-p
228     # all"
229     ridealong-builds:
230         'linux':
231             - 'sm-plain-linux32'
232             - 'sm-arm-sim-linux32'
233         'linux64':
234             - 'sm-plain-linux64'
235             - 'sm-nojit-linux64'
236             - 'sm-nonunified-linux64'
237             - 'sm-arm-sim-linux32'
238             - 'sm-arm64-sim-linux64'
239             - 'sm-compacting-linux64'
240             - 'sm-rootanalysis-linux64'
241             - 'sm-package-linux64'
242             - 'sm-tsan-linux64'
243             - 'sm-asan-linux64'
244             - 'sm-msan-linux64'
245             - 'sm-fuzzing-linux64'
246         'win32':
247             - 'sm-plain-win32'
248             - 'sm-compacting-win32'
250 release-promotion:
251     products:
252         - 'devedition'
253         - 'fennec'
254         - 'firefox'
255     flavors:
256         promote_devedition:
257             product: devedition
258             target-tasks-method: promote_desktop
259             partial-updates: true
260         promote_firefox:
261             product: firefox
262             target-tasks-method: promote_desktop
263             partial-updates: true
264         promote_firefox_partner_repack:
265             product: firefox
266             rebuild-kinds:
267                 - release-partner-repack
268                 - release-partner-repack-chunking-dummy
269                 - release-partner-repack-signing
270                 - release-partner-repack-notarization-part-1
271                 - release-partner-repack-notarization-poller
272                 - release-partner-repack-repackage
273                 - release-partner-repack-repackage-signing
274                 - release-partner-repack-beetmover
275             target-tasks-method: promote_desktop
276         promote_firefox_partner_attribution:
277             product: firefox
278             rebuild-kinds:
279                 - release-partner-attribution
280                 - release-partner-attribution-beetmover
281             target-tasks-method: promote_desktop
282         promote_firefox_rc:
283             product: firefox
284             is-rc: true
285             target-tasks-method: promote_desktop
286             partial-updates: true
287         push_devedition:
288             product: devedition
289             target-tasks-method: push_desktop
290             partial-updates: true
291         push_firefox:
292             product: firefox
293             target-tasks-method: push_desktop
294             partial-updates: true
295         ship_devedition:
296             product: devedition
297             target-tasks-method: ship_desktop
298             version-bump: true
299             partial-updates: true
300         ship_firefox:
301             product: firefox
302             target-tasks-method: ship_desktop
303             version-bump: true
304             partial-updates: true
305         ship_firefox_rc:
306             product: firefox
307             is-rc: true
308             target-tasks-method: ship_desktop
309             partial-updates: true
312 merge-automation:
313     behaviors:
314         central-to-beta:
315             fetch-version-from: "browser/config/version.txt"
316             version-files:
317                 - filename: "config/milestone.txt"
318                   new-suffix: ''
319                 - filename: "browser/config/version.txt"
320                   new-suffix: ''
321                 - filename: "browser/config/version_display.txt"
322                   new-suffix: 'b1'
323             replacements:
324                 - - browser/config/mozconfigs/linux32/l10n-mozconfig
325                   - ac_add_options --with-branding=browser/branding/nightly
326                   - ac_add_options --enable-official-branding
327                 - - browser/config/mozconfigs/linux64/l10n-mozconfig
328                   - ac_add_options --with-branding=browser/branding/nightly
329                   - ac_add_options --enable-official-branding
330                 - - browser/config/mozconfigs/win32/l10n-mozconfig
331                   - ac_add_options --with-branding=browser/branding/nightly
332                   - ac_add_options --enable-official-branding
333                 - - browser/config/mozconfigs/win64/l10n-mozconfig
334                   - ac_add_options --with-branding=browser/branding/nightly
335                   - ac_add_options --enable-official-branding
336                 - - browser/config/mozconfigs/win64-aarch64/l10n-mozconfig
337                   - ac_add_options --with-branding=browser/branding/nightly
338                   - ac_add_options --enable-official-branding
339                 - - browser/config/mozconfigs/macosx64/l10n-mozconfig
340                   - ac_add_options --with-branding=browser/branding/nightly
341                   - ac_add_options --enable-official-branding
342             merge-old-head: true
343             base-tag: 'FIREFOX_BETA_{major_version}_BASE'
344             end-tag: 'FIREFOX_BETA_{major_version}_END'
345             from-repo: 'https://hg.mozilla.org/mozilla-central'
346             from-branch: 'central'
347             to-repo: 'https://hg.mozilla.org/releases/mozilla-beta'
348             to-branch: 'beta'
349         early-to-late-beta:
350             fetch-version-from: "browser/config/version.txt"
351             version-files: []
352             replacements:
353                 - - build/defines.sh
354                   - EARLY_BETA_OR_EARLIER=1
355                   - EARLY_BETA_OR_EARLIER=
356             merge-old-head: false
357             to-repo: 'https://hg.mozilla.org/releases/mozilla-beta'
358             to-branch: 'beta'
359         beta-to-release:
360             fetch-version-from: "browser/config/version.txt"
361             version-files:
362                 - filename: "browser/config/version_display.txt"
363                   new-suffix: ''
364             replacements: []
365             merge-old-head: true
366             base-tag: 'FIREFOX_RELEASE_{major_version}_BASE'
367             end-tag: 'FIREFOX_RELEASE_{major_version}_END'
368             from-repo: 'https://hg.mozilla.org/releases/mozilla-beta'
369             from-branch: 'beta'
370             to-repo: 'https://hg.mozilla.org/releases/mozilla-release'
371             to-branch: 'release'
372         release-to-esr:
373             fetch-version-from: "browser/config/version.txt"
374             version-files:
375                 - filename: "browser/config/version_display.txt"
376                   new-suffix: 'esr'
377             replacements: []
378             merge-old-head: false
379             end-tag: "FIREFOX_ESR_{major_version}_BASE"
380             to-repo: 'https://hg.mozilla.org/releases/mozilla-esr102'
381             to-branch: 'esr102'
382         bump-central:
383             fetch-version-from: "browser/config/version.txt"
384             version-files:
385                 - filename: "config/milestone.txt"
386                   version-bump: "major"
387                   new-suffix: 'a1'
388                 - filename: "browser/config/version.txt"
389                   version-bump: "major"
390                   new-suffix: 'a1'
391                 - filename: "browser/config/version_display.txt"
392                   version-bump: "major"
393                   new-suffix: 'a1'
394             replacements:
395                 - - "services/sync/modules/constants.sys.mjs"
396                   - 'WEAVE_VERSION = "1.{current_weave_version}.0"'
397                   - 'WEAVE_VERSION = "1.{next_weave_version}.0"'
398             merge-old-head: false
399             end-tag: 'FIREFOX_NIGHTLY_{major_version}_END'
400             to-repo: 'https://hg.mozilla.org/mozilla-central'
401             to-branch: 'central'
402         bump-esr102:
403             fetch-version-from: "browser/config/version.txt"
404             version-files:
405                 - filename: "config/milestone.txt"
406                   version-bump: "minor"
407                 - filename: "browser/config/version.txt"
408                   version-bump: "minor"
409                 - filename: "browser/config/version_display.txt"
410                   version-bump: "minor"
411             replacements: []
412             merge-old-head: false
413             to-repo: 'https://hg.mozilla.org/releases/mozilla-esr102'
414             to-branch: 'esr102'
416 scriptworker:
417     # See additional configuration in taskcluster/gecko_taskgraph/util/scriptworker.py
418     scope-prefix: 'project:releng'
420 partner-urls:
421     release-partner-repack:
422         by-release-product:
423             default: null
424             firefox:
425                 by-release-type:
426                     default: null
427                     beta|release.*:
428                         by-release-level:
429                             production: 'git@github.com:mozilla-partners/repack-manifests.git'
430                             staging: 'git@github.com:moz-releng-automation-stage/repack-manifests.git'
431                     esr.*:
432                         by-release-level:
433                             production: 'git@github.com:mozilla-partners/esr-repack-manifests.git'
434                             staging: 'git@github.com:moz-releng-automation-stage/esr-repack-manifests.git'
435     release-partner-attribution:
436         by-release-product:
437             default: null
438             firefox:
439                 by-release-type:
440                     default: null
441                     beta|release.*:
442                         by-release-level:
443                             production: 'git@github.com:mozilla-partners/repack-manifests.git'
444                             staging: 'git@github.com:moz-releng-automation-stage/repack-manifests.git'
445                     esr.*:
446                         by-release-level:
447                             production: 'git@github.com:mozilla-partners/esr-repack-manifests.git'
448                             staging: 'git@github.com:moz-releng-automation-stage/esr-repack-manifests.git'
449     release-eme-free-repack:
450         by-release-product:
451             default: null
452             firefox:
453                 by-release-type:
454                     default: null
455                     beta|release.*:
456                         by-release-level:
457                             production: 'git@github.com:mozilla-partners/mozilla-EME-free-manifest.git'
458                             staging: 'git@github.com:moz-releng-automation-stage/mozilla-EME-free-manifest.git'
461 task-priority:
462     by-project:
463         'mozilla-release': 'highest'
464         'mozilla-esr.*': 'very-high'
465         'mozilla-beta': 'high'
466         'mozilla-central': 'medium'
467         'autoland': 'low'
468         'mozilla-inbound': 'low'
469         'default': 'very-low'
471 taskgraph:
472     register: gecko_taskgraph:register
474 workers:
475     aliases:
476         b-linux.*:
477             provisioner: '{trust-domain}-{level}'
478             implementation: docker-worker
479             os: linux
480             worker-type: '{alias}'
481         b-win2012:
482             provisioner: '{trust-domain}-{level}'
483             implementation: generic-worker
484             os: windows
485             worker-type: '{alias}-azure'
486         image:
487             provisioner: '{trust-domain}-{level}'
488             implementation: docker-worker
489             os: linux
490             worker-type: '{alias}'
491         images:
492             provisioner: '{trust-domain}-{level}'
493             implementation: docker-worker
494             os: linux
495             worker-type: '{alias}'
496         images-gcp:
497             provisioner: '{trust-domain}-{level}'
498             implementation: docker-worker
499             os: linux
500             worker-type: '{alias}'
501         addon:
502             provisioner: scriptworker-k8s
503             implementation: push-addons
504             os: scriptworker
505             worker-type:
506                 by-release-level:
507                     production: '{trust-domain}-3-addon'
508                     staging: '{trust-domain}-1-addon'
509         balrog:
510             provisioner: scriptworker-k8s
511             implementation: balrog
512             os: scriptworker
513             worker-type:
514                 by-release-level:
515                     production: '{trust-domain}-3-balrog'
516                     staging: '{trust-domain}-1-balrog'
517         bouncer:
518             provisioner: scriptworker-k8s
519             # Note that this implementation doesn't correspond with an
520             # payload_builder, there are several `bouncer-*` implemenations.
521             implementation: bouncer
522             os: scriptworker
523             worker-type:
524                 by-release-level:
525                     production: '{trust-domain}-3-bouncer'
526                     staging: '{trust-domain}-1-bouncer'
527         beetmover:
528             provisioner: scriptworker-k8s
529             implementation: beetmover
530             os: scriptworker
531             worker-type:
532                 by-release-level:
533                     production: '{trust-domain}-3-beetmover'
534                     staging: '{trust-domain}-1-beetmover'
535         linux-depsigning:
536             provisioner: scriptworker-k8s
537             implementation: scriptworker-signing
538             os: linux
539             worker-type: '{trust-domain}-t-signing'
540         linux-signing:
541             provisioner: scriptworker-k8s
542             implementation: scriptworker-signing
543             os: linux
544             worker-type:
545                 by-release-level:
546                     production: '{trust-domain}-3-signing'
547                     staging: '{trust-domain}-t-signing'
548         mac-depsigning:
549             provisioner: scriptworker-prov-v1
550             implementation: scriptworker-signing
551             os: macosx
552             worker-type: depsigning-mac-v1
553         mac-notarization-poller:
554             provisioner: scriptworker-prov-v1
555             implementation: notarization-poller
556             os: macosx
557             worker-type: mac-notarization-poller
558         mac-signing:
559             provisioner: scriptworker-prov-v1
560             implementation: scriptworker-signing
561             os: macosx
562             worker-type:
563                 by-release-level:
564                     production: signing-mac-v1
565                     staging: depsigning-mac-v1
566         tree:
567             provisioner: scriptworker-k8s
568             implementation: treescript
569             os: scriptworker
570             worker-type:
571                 by-release-level:
572                     production: '{trust-domain}-3-tree'
573                     staging:
574                         by-project:
575                             autoland: '{trust-domain}-3-tree'
576                             default: '{trust-domain}-1-tree'
577         tree-dev:
578             provisioner: scriptworker-k8s
579             implementation: treescript
580             os: scriptworker
581             worker-type: '{trust-domain}-1-tree-dev'
582         t-bitbar-gw.*:
583             provisioner: proj-autophone
584             implementation: generic-worker
585             os: linux-bitbar
586             worker-type: 'gecko-{alias}'
587         t-linux(-large|-xlarge|-xlarge-source):
588             provisioner: '{trust-domain}-t'
589             implementation: docker-worker
590             os: linux
591             worker-type: '{alias}-gcp'
592         t-linux-kvm:
593             provisioner: '{trust-domain}-t'
594             implementation: docker-worker
595             os: linux
596             worker-type: 't-linux-kvm-gcp'
597         t-linux-kvm-aws:
598             provisioner: '{trust-domain}-t'
599             implementation: docker-worker
600             os: linux
601             worker-type: 't-linux-metal'
602         t-linux-talos:
603             provisioner: releng-hardware
604             implementation: generic-worker
605             os: linux
606             worker-type: 'gecko-{alias}'
607         t-linux-talos-1804:
608             provisioner: releng-hardware
609             implementation: generic-worker
610             os: linux
611             worker-type: 'gecko-{alias}'
612         t-osx-1015-r8:
613             provisioner: releng-hardware
614             implementation: generic-worker
615             os: macosx
616             worker-type: 'gecko-{alias}'
617         t-osx-1100-m1:
618             provisioner: releng-hardware
619             implementation: generic-worker
620             os: macosx
621             worker-type: 'gecko-{alias}'
622         t-osx-1015-power:
623             provisioner: releng-hardware
624             implementation: generic-worker
625             os: macosx
626             worker-type: 'gecko-{alias}'
627         t-linux-xlarge-pgo:
628             provisioner:
629                 by-level:
630                     '3': '{trust-domain}-{level}'
631                     default: '{trust-domain}-t'
632             implementation: docker-worker
633             os: linux
634             worker-type: 't-linux-xlarge-gcp'
635         b-osx-1015:
636             provisioner: releng-hardware
637             implementation: generic-worker
638             os: macosx
639             worker-type:
640                 by-level:
641                     '3': 'gecko-3-b-osx-1015'
642                     default: 'gecko-1-b-osx-1015'
643         t-win10-64(|-gpu-s|-source):
644             provisioner: '{trust-domain}-t'
645             implementation: generic-worker
646             os: windows
647             worker-type: '{alias}'
648         t-win10-64(-hw|-ref-hw|-1803-hw):
649             provisioner: releng-hardware
650             implementation: generic-worker
651             os: windows
652             worker-type: 'gecko-{alias}'
653         win10-64-2004(|-gpu|-ssd|-source|-ssd-gpu):
654             provisioner: 'gecko-t'
655             implementation: generic-worker
656             os: windows
657             worker-type: '{alias}'
658         t-win11-64(|-gpu-s|-source):
659             provisioner: '{trust-domain}-t'
660             implementation: generic-worker
661             os: windows
662             worker-type: '{alias}'
663         win11-64-2009(|-gpu|-ssd|-source|-ssd-gpu):
664             provisioner: 'gecko-t'
665             implementation: generic-worker
666             os: windows
667             worker-type: '{alias}'
668         t-win7-32-gpu:
669             provisioner: '{trust-domain}-t'
670             implementation: generic-worker
671             os: windows
672             worker-type: '{alias}'
673         t-win7-32:
674             provisioner: releng-hardware
675             implementation: generic-worker
676             os: windows
677             worker-type: 'gecko-{alias}-hw'
678         t-win64-aarch64-laptop:
679             provisioner: bitbar
680             implementation: generic-worker
681             os: windows
682             worker-type: 'gecko-{alias}'
683         succeed:
684             provisioner: built-in
685             implementation: succeed
686             os: none
687             worker-type: succeed
688         misc:
689             provisioner: '{trust-domain}-t'
690             implementation: docker-worker
691             os: linux
692             worker-type: misc-gcp
695 mac-notarization:
696     mac-behavior:
697         by-project:
698             mozilla-(central|beta|release|esr.*):
699                 by-shippable:
700                     "true": mac_notarize
701                     default: mac_sign_and_pkg
702             default: mac_sign_and_pkg
703     mac-entitlements:
704         by-platform:
705             macosx64.*:
706                 by-release-level:
707                     production: security/mac/hardenedruntime/production.entitlements.xml
708                     default: security/mac/hardenedruntime/developer.entitlements.xml
709             default: ''
710     mac-requirements:
711         by-platform:
712             macosx64.*: build/package/mac_osx/requirements.plist
713             default: ''
715 expiration-policy:
716     by-project:
717         try:
718             default: 1 month
719             shortest: 7 days
720             short: 14 days
721             medium: 1 month
722             long: 1 month
723         autoland:
724             default: 1 year
725             shortest: 14 days
726             short: 3 months
727             medium: 1 year
728             # To avoid keeping shippable builds for over a year
729             long: 1 year
730         default:
731             default: 3 months
732             shortest: 7 days
733             short: 1 month
734             medium: 1 year
735             long: 1 year