Switch to using aliases for worker-types in taskgraph.
Categories
(Firefox Build System :: Task Configuration, task)
Tracking
(Not tracked)
People
(Reporter: tomprince, Assigned: tomprince)
References
Details
Attachments
(6 files, 1 obsolete file)
There are a number of ways we want to vary workers over time and jobs, including
- we are working on migrating to gce
- mac pgo builds have a dedicated worker-type for level 3 but not level 1
Rather than have all tasks know about how the machines are provisioned, we should move to using short-names for the worker types, and then have a config mapping those to the actual worker types.
This will probably subsume taskgraph.util.worker_types eventually.
Assignee | ||
Updated•6 years ago
|
Comment 1•6 years ago
|
||
💖!
A few extra thoughts:
-
it'd be great to have this in ci-configuration, so that we can change workerType names across all repos simultaneously
-
it'd be great to allow overriding this in a try push (maybe by just supplying a URL to a different worker-types.yml?)
For Windows workerTypes, pmoore and grenade often do try pushes to run builds/tests on "beta" workertypes. That's a nice model and it would be great to support it more naturally.
-
it'd be great if this could later be expanded to allow proportional allocation
When we upgraded mac tests from buildbot + buildbot-bridge to taskcluster workers, we reformatted them in batches, and added some custom code that would send N% of requests to the old worker-type and (100-N)% to the new worker-types. We did so in a stable fashion (so that a particular task was always on the same worker-type).
Assignee | ||
Comment 2•6 years ago
|
||
This slightly decreases the amount of code that needs to know how to determine this.
Assignee | ||
Comment 3•6 years ago
|
||
Currently the scopes are handled in some test-specific code. However, there is
logic not to be in generic code.
Assignee | ||
Comment 4•6 years ago
|
||
Some of those sound like useful ideas, and some of them I'm not sure of. I will keep the surface area of the code that care about the mapping to real names small, so that we can extend it to handle some of those use cases easier in the future.
Assignee | ||
Comment 5•6 years ago
|
||
Comment 7•6 years ago
|
||
Backed out for causing Gecko Decision Task bustage.
Backout link: https://hg.mozilla.org/integration/autoland/rev/54ed5eac2abca2519704c74bc5c421b846031504
Push link: https://treeherder.mozilla.org/#/jobs?repo=autoland&resultStatus=testfailed%2Cbusted%2Cexception%2Crunnable&selectedJob=232597820&revision=722b3915da319bd9cab0a9f2a43c18b75585ffec
Log link: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=232592511&repo=autoland&lineNumber=3859
Assignee | ||
Updated•6 years ago
|
Comment 9•6 years ago
|
||
bugherder |
Assignee | ||
Comment 10•6 years ago
|
||
:dustin, I've included a sketch of what I'm thinking, can you have look over it, and see if you think it is reasonable?
Updated•6 years ago
|
Assignee | ||
Comment 11•6 years ago
|
||
This adds worker-type alias that has dedicated workers at level-3 for running
instrumented builds, but uses a test worker type at other levels.
Comment 12•6 years ago
|
||
Comment on attachment 9051101 [details]
Bug 1532783: Add worker types for running instrumented builds;
Revision D23576 was moved to bug 1535132. Setting attachment 9051101 [details] to obsolete.
Updated•6 years ago
|
Comment 13•6 years ago
|
||
Comment 14•6 years ago
|
||
bugherder |
Comment 15•6 years ago
|
||
Comment 16•6 years ago
|
||
Hi all, Rob isn't here so I pushed this with a "selection" of workers that sounded familiar. AFAIK, TB doesn't do android, PGO and aarch64 also seemed unfamiliar.
Can you please let me know what I should add or subtract.
Assignee | ||
Comment 17•6 years ago
|
||
Assignee | ||
Comment 18•6 years ago
|
||
Comment 19•6 years ago
|
||
Assignee | ||
Comment 20•6 years ago
|
||
Comment 21•6 years ago
|
||
Comment 22•6 years ago
|
||
bugherder |
Comment 23•6 years ago
|
||
Assignee | ||
Updated•6 years ago
|
Updated•6 years ago
|
Description
•