Closed Bug 1603454 Opened 5 years ago Closed 5 years ago

Ability to schedule test paths within a task

Categories

(Firefox Build System :: Task Configuration, enhancement, P1)

enhancement

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 1633866

People

(Reporter: ahal, Unassigned)

References

(Blocks 1 open bug)

Details

Currently test paths are hardcoded into chunks (or else determined at test runtime). This means if you want to run test_foo, you have to schedule the chunk containing test_foo which means you also have to run all the other tests in that chunk even if they aren't useful.

There is a way to specify test paths on try via the MOZHARNESS_TEST_PATHS environment variable, but this method by-passes the taskgraph entirely. It'll cause every chunk of a suite to run the same set of tasks (as such, we only ever schedule the chunk-1 of each suite when running in this mode).

Instead, we need to make paths a proper input to the taskgraph (likely as a parameter). Then taskgraph generation can make smart decisions about which tests to run and chunk them appropriately (e.g dynamic chunks). The algorithm used to determine chunks may vary on the mode. For example, certain try selectors may want to simply run every test file under the user specified directories. On autoland, we may want to use the list of modified files as an input, and run a more expensive code coverage / machine learning analysis.

So this bug will only be about making it possible to specify test paths from try and autoland as input parameters. Follow-up bugs can work on actually using them.

Blocks: 1603459
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.