need a way to perform linux64 + linux64-stylo T-pushes (π-pushes) to reduce budget impact of stylo try runs

RESOLVED FIXED

Status

RESOLVED FIXED
2 years ago
4 months ago

People

(Reporter: bholley, Assigned: bholley)

Tracking

Details

Attachments

(1 attachment)

(Assignee)

Description

2 years ago
This might be possible in the status quo, but trychooser doesn't have an option for linux64-stylo T-pushes, so filing a bug. The answer here may just be to tell us what the right syntax actually is.

When doing try pushes, we really want to build on all platforms (to avert the kind of bustage that's currently happening on autoland), and run tests on the linux64-stylo platform, as well as one non-stylo platform (linux64 works well). Otherwise, we have to choose between inadequate results, two separate pushes, or a wasteful all-platform push.

I basically want something like:

try: -b do -p all -u all[x64,stylo] -t none

Would that syntax actually work?
(Assignee)

Updated

2 years ago
Flags: needinfo?(dustin)

Comment 1

2 years ago
I tried the syntax and it doesn't have the results you would expect.  I don't think we have implemented t-tests with trychooser yet, see bug 1141280
The try option syntax does support t-pushes (bug 1247343).  However, I don't think "stylo" means anything in the context of a T push.  The values in brackets need to be either full platform names or a pretty name defined in UNITTEST_PLATFORM_PRETTY_NAMES in taskcluster/taskgraph/try_option_syntax.py

So something like `-u all [linux64,linux64-stylo]` would probably do the trick (x64 also includes linux64-asan, which you probably don't need here)
Flags: needinfo?(dustin)
(Assignee)

Comment 3

2 years ago
Sounds good - thanks!
Status: NEW → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → WORKSFORME
(Assignee)

Comment 4

2 years ago
So this seems to mostly work, but seems to exclude our reftest-stylo job:

https://treeherder.mozilla.org/#/jobs?repo=try&revision=a4510ac771b354ec4a0a6427394a9e0dd6459703

Dustin, what's the fix here?
Status: RESOLVED → REOPENED
Flags: needinfo?(dustin)
Resolution: WORKSFORME → ---
So, looking at the decision task:

  https://treeherder.mozilla.org/#/jobs?repo=try&revision=a4510ac771b354ec4a0a6427394a9e0dd6459703&selectedJob=80539968

and looking at its full-task-graph (warning, huge)

  https://queue.taskcluster.net/v1/task/TgHt8oM9STKGs2QbPL9QgQ/runs/0/artifacts/public/full-task-graph.json

I see the a reftest-stylo task (but I don't see it in target-tasks.json, meaning it was filtered out by try syntax):

  "test-linux64-stylo/debug-reftest-stylo-1": {
    "attributes": {
      "build_platform": "linux64-stylo",
      "build_type": "debug",
      "e10s": false,
      "kind": "test",
      "run_on_projects": [
        "stylo",
        "autoland",
        "mozilla-inbound",
        "mozilla-central"
      ],
      "test_chunk": "1",
      "test_platform": "linux64-stylo",
      "unittest_flavor": "reftest-stylo",
      "unittest_suite": "reftest",
      "unittest_try_name": "reftest-stylo"
    },

The syntax was "try: -b do -p all -u all[linux64-stylo] -t none"

I think the issue is the run_on_projects attribute.  For try, that applies when `-p all` is specified (I know, I know, it'd be great if try did what you wanted it to do, but somebody else wanted it to not do what you wanted it to do).

Using something with explicit platforms, like `-p linux64-stylo`, should get that test run.  Alternately, adding 'try' to run_on_projects would make it run.
Flags: needinfo?(dustin)
(Assignee)

Comment 6

2 years ago
(In reply to Dustin J. Mitchell [:dustin] from comment #5)
> Using something with explicit platforms, like `-p linux64-stylo`, should get
> that test run.

Well sure, but that defeats the purpose of the T-push / π-push.

> Alternately, adding 'try' to run_on_projects would make it run.

Ok, I'll give that a shot.
OK, just keep in mind it means that those tests will run whenever anyone uses `-p all`.
(Assignee)

Comment 8

2 years ago
(In reply to Dustin J. Mitchell [:dustin] from comment #7)
> OK, just keep in mind it means that those tests will run whenever anyone
> uses `-p all`.

That's fine.

I have a patch that seems to do the right thing: https://treeherder.mozilla.org/#/jobs?repo=try&revision=0cc5c32cae1451b87adc8d31529d66666b3aba7d
(Assignee)

Comment 9

2 years ago
Created attachment 8842707 [details] [diff] [review]
Run stylo reftests on try by default. v1

MozReview-Commit-ID: 9skNPBTvTsi
Attachment #8842707 - Flags: review?(dustin)
Assignee: nobody → bobbyholley
Attachment #8842707 - Flags: review?(dustin) → review+

Comment 10

2 years ago
Pushed by bholley@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/dcd244eca427
Run stylo reftests on try by default. r=dustin

Comment 11

2 years ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/dcd244eca427
Status: REOPENED → RESOLVED
Last Resolved: 2 years ago2 years ago
status-firefox54: --- → fixed
Resolution: --- → FIXED

Updated

2 years ago
See Also: → bug 1344144

Updated

2 years ago
Blocks: 1347096
Component: Platform Support → Buildduty
Product: Release Engineering → Infrastructure & Operations
You need to log in before you can comment on or make changes to this bug.