You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: rfcs/0033-shared-trust-domain.md
+44-14Lines changed: 44 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@
4
4
5
5
# Summary
6
6
7
-
Build and maintain a shared Trust Domain, Workers, and Scriptworkers on the Firefox CI cluster that any Mozilla project can use. (Browser products will remain in their existing - separate - trust domain.)
7
+
Build and maintain a shared Trust Domain, Workers, and Scriptworkers on the Firefox CI cluster that any Mozilla project can use. Browser products will remain in their existing - separate - trust domain.
8
8
9
9
## Motivation
10
10
@@ -15,29 +15,59 @@ One of the barriers to entry for using Taskcluster is waiting on RelEng to creat
15
15
We will create a new trust domain and workers that are generally available for Mozilla employees and trusted volunteers to use. Specifically:
16
16
17
17
* A new Trust Domain (`mozilla`) that is not tied to a specific project or product
18
-
* New Workers for builds on Linux, macOS 11.0, and Windows Server 2012
18
+
* New Workers for builds on Linux, macOS 10.15, and Windows Server 2012
19
+
* A RelEng maintained Docker image will be provided for Linux
19
20
* These will be created under a new `mozilla-1` provisioner
20
-
* New Workers for tests on Linux (through developer provided Docker images), macOS 11.0, and Windows 10
21
+
* New Workers for tests on Linux, macOS 10.15, and Windows 10
22
+
* A RelEng maintained Docker image will be provided for Linux
21
23
* These will be created under a new `mozilla-t` provisioner
22
-
* New Scriptworker instances forsigning and mac-signing
24
+
* New Scriptworker instances for signing and mac-signing
23
25
* These will be created under the existing `scriptworker-k8s` and `scriptworker-prov-v1` provisioners
24
26
* Workers will be prefixed with `mozilla-t-`
27
+
* mac-signing will run 10.14, like our other mac-signing workers (there's no known reason to upgrade)
25
28
26
-
Notably, we are only concerned with level 1 workers at this time, which means we can ignore things like scriptworkers that are only used when shipping. Level 3 workers will be dealt with at a later stage.
29
+
Notably, we are only concerned with level 1 workers at this time, which means we can ignore things like scriptworkers that are only used when shipping. Level 3 workers will be dealt with at a later stage, and most likely will not use a shared trust domain or workers across projects.
27
30
28
-
Access to create and manage tasks on these new workers will be granted to anyone with `scm_level_1`.
31
+
Access to create and manage tasks on these new workers will be granted to anyone with `scm_level_1_github` or `scm_level_1`.
29
32
30
33
Going forward, we will ensure workers for other supported build or target platforms are added to this pool. (For example, when we add support for scheduling iOS tests in Taskcluster, that will be made available in the `mozilla-t` provisioner as well.)
mozilla-1/linux-highcpu | Linux jobs requiring more CPU resources
41
+
mozilla-1/win2012 | Windows Server 2012 jobs
42
+
mozilla-1/win2012-highcpu | Windows Server 2012 jobs requiring more CPU resources
43
+
mozilla-1/win10 | Windows 10 jobs
44
+
mozilla-1/macos-bigsur | macOS 10.15 jobs
45
+
mozilla-t/signing | Non-mac signing jobs
46
+
mozilla-t/mac-signing | Mac signing jobs
47
+
48
+
## Hardware Machine Allocation
49
+
50
+
We will need hardware for 3 different pools, which will be allocated as noted below:
51
+
* 2 machines for macOS signing, running allocated from the existing production Firefox pool
52
+
* 3 machines for macOS builds, allocated from TBD
53
+
* 3 machines for macOS tests, allocated from TBD
54
+
55
+
When additional workers are needed in the future, they will be allocated from TBD.
33
56
34
-
* Are we happy with the new trust domain name & provisioners for the workers?
35
-
* Where did we get the macOS hardware for the build, test, and signing pools?
36
-
* New or pull from existing pools?
37
-
* How many machines do we need in each hardware pool?
38
-
* Is macOS 11.0 the right version to use for build and test?
39
-
* Are there other test platforms or scriptworkers we should support?
40
-
* Is `scm_level_1` the right group to use, or do we need a new one for this purpose?
57
+
## `v3` Taskcluster index format
58
+
59
+
The current `v2` index format only includes repository names as an identifier (not user or organization). This is generally not an issue for any of current trust domains (because they generally only support one project), but in this new pool where we have N projects, it introduces the potential for collisions or pollution between them. To ensure this isn't an issue we will introduce a new `v3` index format that includes the repository location in its path as well - including both domain and path. Examples include:
0 commit comments