Closed Bug 1610886 Opened 4 years ago Closed 4 years ago

Unable to run test-verify on try

Categories

(Firefox Build System :: Task Configuration, defect, P2)

defect

Tracking

(firefox76 fixed)

RESOLVED FIXED
mozilla76
Tracking Status
firefox76 --- fixed

People

(Reporter: gbrown, Assigned: gbrown)

References

(Blocks 1 open bug)

Details

(Whiteboard: dev-prod-2020)

Attachments

(1 file)

'mach try fuzzy' and 'mach try fuzzy --full' do not present choices for 'test-verify'.

'mach try -b d -p linux64 -u test-verify' fails to run: https://treeherder.mozilla.org/#/jobs?repo=try&revision=bb5d8daeaa5152631bc55636211249773b5c0559

Seems like a recent regression, but I'm not sure how recent...

test-verify seems to be running okay on mozilla-central and autoland.

test-verify is a tier 2 task, but I can select other tier 2 tasks.

The task definition explicitly includes 'try' for run-on-projects:

https://searchfox.org/mozilla-central/rev/e878e5b81bb319c141900ce9cfcde732df5c8449/taskcluster/ci/test/misc.yml#54

'mach taskgraph full -p project=try' displays expected test-verify tasks.

'mach taskgraph optimized -p project=try' does not.

Oh, but the list of tasks from 'mach taskgraph optimized -p project=try' is actually very short...reflecting what would run without any requests/parameters?

Blocks: test-verify
Whiteboard: dev-prod-2020

I suspect there is something wrong with the run-on-projects part of the task configuration; if I replace it with something simpler, I can push to try.

Assignee: nobody → gbrown
Priority: -- → P2

Note that -p project=try grabs the parameters.yml from the most recent push to try, which isn't all that meaningful, so will be random, depending on the most recent push to try.

I suspect that mach taskgraph target (or ... target-graph) is more intresting that mach taskgraph full (if using a reasonable paramters file). The former will show the tasks requested to run (-graph will include dependencies). Whereas full will show all tasks that are defined.

It looks like what is going on in your pushes is that you have no local changes, so https://searchfox.org/mozilla-central/rev/5a10be606f2d76ef22f1f44565749490de991d35/taskcluster/taskgraph/util/perfile.py#58 returns nothing, and thus there are no chunks of test-verify created. Thus mach try fuzzy does list them.

(In reply to Tom Prince [:tomprince] from comment #5)

It looks like what is going on in your pushes is that you have no local changes, so https://searchfox.org/mozilla-central/rev/5a10be606f2d76ef22f1f44565749490de991d35/taskcluster/taskgraph/util/perfile.py#58 returns nothing, and thus there are no chunks of test-verify created. Thus mach try fuzzy does list them.

It was possible in the (recent?) past to select test-verify with fuzzy or syntax without any modified files.

It was also possible to run test-verify with a specified path: mach try fuzzy <path/to/test> (bug 1400895); that doesn't work now -- test-verify is not included in the fuzzy list of tasks.

Now even if I modify a test and push to try with 'mach try fuzzy', test-verify is not included in the fuzzy list. Maybe we should debug the perfile.py code for that case, to start.

Depends on: 1621705

I find that 2 conditions are necessary to run test-verify (TV, TVg, TVwpt) on try:

  1. push must contain a test modification; AND
  2. --full must be included on the mach try command line.

Condition 1 is not required if I hack perfile_number_of_chunks().

Ensure a minimum of 1 chunk for "per-file" tests like test-verify when run on try, even when
no local file changes are detected. --full is still required.

Pushed by gbrown@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/03c92cf1a731
Make it easier to run test-verify on try; r=bc
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla76
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: