Closed Bug 1584979 Opened 5 years ago Closed 4 years ago

[wpt-sync] Sync PR 19401 - Create a decision task for taskcluster

Categories

(Testing :: web-platform-tests, task, P4)

task

Tracking

(firefox72 fixed)

RESOLVED FIXED
mozilla72
Tracking Status
firefox72 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 19401 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/19401
Details from upstream follow.

James Graham <james@hoppipolla.co.uk> wrote:

Create a decision task for taskcluster

This replaces the current scheme in which all tasks are specified in the .taskcluster.yml file with a setup in which only an initial "decision" task is specified in that file. The job of the decision task is to examine the event that caused it to be scheduled and the corresponding changes (if any) and select an appropriate set of jobs to run.

Compared to the previous setup of having a single set of tasks this provides some new features:

  • Ability to only schedule those tasks that should actually be run. Previously for PRs we were using a scheme inherited from travis in which all the jobs would be scheduled but a subset of them would bail out without doing anything. This made for inefficient use of resources and poor UI since users would have to look at the results of jobs that didn't run, alongside those of jobs that actually did run.
  • Ability to specify dependencies between tasks. This allows tasks that don't start until another task completes. An example of this partially implemented in this PR is downloading a single browser binary used for all subsequent runs of that browser, ensuring constant versions both for the initial task and also for any retries. So far the dependency is implemented, but not the logic to actually use the downloaded Firefox for subsequent tasks.

There are also various things that now become possible that previously were hard to implement. For example we could invent a tc-try:<jobs> syntax to allow trying specific master runs on a PR without having to push to the triggers/ branches.

The current state of the feature is that tasks are described in a custom YAML format file in tools/ci/tasks/test.yml (there is some intent to allow using multiple tasks in the future). The format of this file and processing model is described in tools/ci/README.md. The setup has been verified on the jgraham/web-platform-tests fork of this repo.

One problem with landing this is that taskcluster always reads the .taskcluster.yml from the branch head, whereas PR tests are run on the merge of the base branch with the PR head. This means that some care is required not to break anything in such merges, or alternatively to rebase all PRs once the change lands.

PR 19401 applied with additional changes from upstream: d3a712a2efa2e0eb4c00aee22aef878e1cb845ac, 120c6c09da6ce71b8c7eecf5dd0782b5af7b273a, 90e1ee27eede63cf117f19c1e55553cc1881aef0
Whiteboard: [wptsync downstream] → [wptsync downstream error]
PR 19401 applied with additional changes from upstream: 0caf257227379666f62c717d1b3ac2319659d315, 60d0c91c095561dea605458044b55f52a8f14b79, 61adf1dd0f37b016ce851722c2f3045560c899e1, a536bc234b54a8062e4cfa01c05becbc49cdea52, ac16b468317c4d51f31060d139679e1a00e302c7, 0541c232203b8d4a9b229791e5ef12ea0f9836d3, 237825fc22f06ca12a3bff5011a668ce0f101a7c, 76fb17d6cac9c6c56ef3b4e2fbea1765abd926e3
Whiteboard: [wptsync downstream error] → [wptsync downstream]
PR 19401 applied with additional changes from upstream: 6f249340f2f3833b0928d9e80c7af5b5ba6aea5e, 4c7312cffa556b614f9448f0e309f7d8c7d78734, f6d693b1796efc206c68e3a9fd4faa3aac55efaa, 8aeb44900921dce5401a91a2ede05dbbbb2d56f2, 424249088dd679888e07bd315dd8ebc98ccf323a, bc8345181dc71ba1e48735c46673b88cf1d7de7f
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → INVALID
Status: RESOLVED → REOPENED
Resolution: INVALID → ---
PR 19401 applied with additional changes from upstream: 6f249340f2f3833b0928d9e80c7af5b5ba6aea5e, 4c7312cffa556b614f9448f0e309f7d8c7d78734, f6d693b1796efc206c68e3a9fd4faa3aac55efaa, 8aeb44900921dce5401a91a2ede05dbbbb2d56f2, 424249088dd679888e07bd315dd8ebc98ccf323a, bc8345181dc71ba1e48735c46673b88cf1d7de7f, 689b968cd1f8848dc2c62928ffd1b20598be3537, c2910bf7a3f854c348c2f0c096543e7d60bc456f, beff32767b9e1234b09ab49fefcf565cf191f831, 2e243a71c2ae60c9844270d6cb3fc8eaab1dc52a, 3ee67ef03aeee31247ee1b5aca3e91ddef4fdfd8, 5a0cae55f2f0f5beac2c0f49c4bdc7a84e5c3188, d5d5e4fb52dd9d96a022a313b4c689a5b1e7c7b7
Status: REOPENED → RESOLVED
Closed: 4 years ago4 years ago
Resolution: --- → INVALID
Status: RESOLVED → REOPENED
Resolution: INVALID → ---
PR 19401 applied with additional changes from upstream: bc8345181dc71ba1e48735c46673b88cf1d7de7f, 689b968cd1f8848dc2c62928ffd1b20598be3537, c2910bf7a3f854c348c2f0c096543e7d60bc456f, beff32767b9e1234b09ab49fefcf565cf191f831, 3ee67ef03aeee31247ee1b5aca3e91ddef4fdfd8, 5a0cae55f2f0f5beac2c0f49c4bdc7a84e5c3188, d5d5e4fb52dd9d96a022a313b4c689a5b1e7c7b7, a93b1f7d58ed6456636ab3af5ef178f2d5d51893, 990bd8b2b89c5d6a1e58db3eb903d489c2f36f39
PR 19401 applied with additional changes from upstream: bc8345181dc71ba1e48735c46673b88cf1d7de7f, 689b968cd1f8848dc2c62928ffd1b20598be3537, c2910bf7a3f854c348c2f0c096543e7d60bc456f, beff32767b9e1234b09ab49fefcf565cf191f831, 3ee67ef03aeee31247ee1b5aca3e91ddef4fdfd8, 5a0cae55f2f0f5beac2c0f49c4bdc7a84e5c3188, d5d5e4fb52dd9d96a022a313b4c689a5b1e7c7b7, a93b1f7d58ed6456636ab3af5ef178f2d5d51893, 990bd8b2b89c5d6a1e58db3eb903d489c2f36f39
Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/25f2a687faf2
[wpt PR 19401] - Create a decision task for taskcluster, a=testonly
Test result changes from PR not available.
Status: REOPENED → RESOLVED
Closed: 4 years ago4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla72
You need to log in before you can comment on or make changes to this bug.