3727 Commits

Author SHA1 Message Date
Andrew Halberstadt
f5e9969793 Bug 1667482 - [taskgraph] Don't fail if last backstop decision task is still running, r=marco
Differential Revision: https://phabricator.services.mozilla.com/D92096
2020-10-01 16:18:36 +00:00
Bogdan Tara
61f9e5d400 Backed out changeset 725f6e6d8aaf (bug 1667482) by aki's request CLOSED TREE 2020-10-01 17:16:58 +03:00
Aki Sasaki
a9f5c60084 Bug 1667482 - retry taskcluster requests. r=taskgraph-reviewers,jmaher DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D91486
2020-09-30 21:47:37 +00:00
Aki Sasaki
a62172dca9 Bug 1666321 - run l10n-bump as part of central-to-beta merge day. r=releng-reviewers,bhearsum DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D91885
2020-09-30 15:29:21 +00:00
Andrew Halberstadt
9673d50ff2 Bug 1643689 - [taskgraph] enable manifest-scheduling on autoland, r=marco
Sets autoland to use the 'bugbug' test manifest loader. This is being enabled
as part of a temporary trial to see the impact it has on sheriffing.

Differential Revision: https://phabricator.services.mozilla.com/D90160
2020-09-30 13:27:14 +00:00
Andrew Halberstadt
4104a550e9 Bug 1643689 - [taskgraph] Replace 'CHUNK_SUITES_BLACKLIST' with the 'test_manifest_loader' key, r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D91588
2020-09-29 16:03:49 +00:00
Andrew Halberstadt
36c2e31e49 Bug 1643689 - [taskgraph] Allow tasks to override the configured 'test_manifest_loader', r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D91587
2020-09-29 17:36:01 +00:00
Dorel Luca
3c9ff4ea07 Backed out 3 changesets (bug 1643689) for Gecko Decision Task failure. CLOSED TREE
Backed out changeset 2912d91dd291 (bug 1643689)
Backed out changeset 50195a6883bf (bug 1643689)
Backed out changeset 6c2a31b47d0b (bug 1643689)
2020-09-29 19:00:55 +03:00
Andrew Halberstadt
cd566c51aa Bug 1643689 - [taskgraph] Replace 'CHUNK_SUITES_BLACKLIST' with the 'test_manifest_loader' key, r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D91588
2020-09-29 14:09:17 +00:00
Andrew Halberstadt
038ce941f6 Bug 1643689 - [taskgraph] Allow tasks to override the configured 'test_manifest_loader', r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D91587
2020-09-28 17:10:48 +00:00
Marco Castelluccio
7b04b731a9 Bug 1639164 - Define a shadow scheduler that uses bugbug's platform selection. r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D91606
2020-09-28 17:06:33 +00:00
Marco Castelluccio
051ad28ea8 Bug 1639164 - Add an option to the BugbugPushSchedules optimization strategy to select configurations on which to run manifests based on bugbug decisions. r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D91605
2020-09-28 20:12:43 +00:00
James Graham
61e09da070 Bug 1666759 - Add a target_tasks filter that enables scheduling uncommon tasks, r=jmaher
In particular this allows scheduling backlog tasks on try with --disable-target-task-filter

Differential Revision: https://phabricator.services.mozilla.com/D91135
2020-09-25 19:48:47 +00:00
Andrew Halberstadt
0c36e740a0 Bug 1666809 - [taskgraph] Consider pushes a backstop if the last backstop had a broken decision task, r=taskgraph-reviewers,aki
Depends on D91330

Differential Revision: https://phabricator.services.mozilla.com/D91331
2020-09-24 19:54:21 +00:00
Andrew Halberstadt
6ea38b96d9 Bug 1666809 - [taskgraph] Refactor test_util_backstop.py to make use of parametrization, r=taskgraph-reviewers,aki
Differential Revision: https://phabricator.services.mozilla.com/D91330
2020-09-24 19:47:45 +00:00
Andrew Halberstadt
c288f18538 Bug 1666809 - Insert decision task indexes directly via taskluster API rather than index-task, r=taskgraph-reviewers,aki
We started using the "backstop" index added by bug 1660506 to determine whether
a push should be a backstop based on a time interval. The problem is that this
index gets added by an index-task that runs after the decision task has
completed.  Therefore, if two pushes land at roughly the same time (i.e, the
second decision task starts before the first completes), then they can both
determine themselves as backstops.

This patch gets around the problem by inserting the "backstop" index as early
as possible (immediately after resolving parameters), so the chances of this
happening become very low. It's still theoretically possible that it could
happen again, but we don't need this to be 100% perfect. As long as it is rare,
it's good enough.

Depends on D91191

Differential Revision: https://phabricator.services.mozilla.com/D91192
2020-09-24 19:19:36 +00:00
Andrew Halberstadt
da707c8ee1 Bug 1666809 - Allow HTTP methods other than GET and POST in taskgraph/util/taskcluster.py, r=taskgraph-reviewers,aki
Some taskcluster APIs use the PUT method.

Differential Revision: https://phabricator.services.mozilla.com/D91191
2020-09-23 21:01:14 +00:00
Narcis Beleuzu
5ad121ac69 Bug 1667045 - Fix lint failure. a=fix CLOSED TREE 2020-09-25 20:32:05 +03:00
Joel Maher
e6c05ddc75 Bug 1667045 - Remove win7/win32 devedition tests. r=bc
Remove win7/win32 devedition tests. r=bc

Differential Revision: https://phabricator.services.mozilla.com/D91442
2020-09-25 16:57:06 +00:00
Andrew Halberstadt
4f9bc7b6dc Bug 1643689 - [taskgraph] Fix taskgraph tests broken by f07222b728fa,
Differential Revision: https://phabricator.services.mozilla.com/D91342
2020-09-24 20:05:06 +00:00
Aki Sasaki
fa5df1bbcf Bug 1666861 - allow for local partner taskgraph debugging. r=releng-reviewers,mtabara DONTBUILD
Depends on D91216

Differential Revision: https://phabricator.services.mozilla.com/D91217
2020-09-24 06:41:39 +00:00
Andrew Halberstadt
bd84e6e3aa Bug 1643689 - [taskgraph] Fix error in 'split_bugbug_args', r=marco
The dict needs to be passed to the last two substrategies, not just the last
one.

Differential Revision: https://phabricator.services.mozilla.com/D90159
2020-09-17 22:49:19 +00:00
Andrew Halberstadt
222db7d319 Bug 1665312 - Ensure a test task is never completely removed from full_task_graph due to test_manifest_loader, r=taskgraph-reviewers,aki
This causes them to get filtered out at the target tasks phase instead. We need
to do this since backfilling depends on the task existing in the full task
graph.

Differential Revision: https://phabricator.services.mozilla.com/D90579
2020-09-23 18:13:12 +00:00
Aki Sasaki
3c61c88571 Bug 1666861 - fix off-cycle partner repacks post-attribution. r=releng-reviewers,mtabara DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D91216
2020-09-24 06:42:09 +00:00
Justin Wood
220c75d1e4 Bug 1634757 - Use v2 actions for balrog submittal. r=releng-reviewers,aki DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D73498
2020-09-16 02:36:04 +00:00
Mihai Alexandru Michis
828d57ff13 Bug 1666379 - Fix stray brace a=lint-fix 2020-09-22 07:06:32 +03:00
Tom Ritter
66ba1e9103 Bug 1666379 - Allow job notifications to be delivered for all outcome types r=aki DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D90943
2020-09-22 03:43:22 +00:00
Kimberly Sereduck
7088c5452d Bug 1662153: Add chromedriver for Chrome 85 r=perftest-reviewers,sparky
Differential Revision: https://phabricator.services.mozilla.com/D88875
2020-09-17 17:28:32 +00:00
Andrew Halberstadt
bc44cf8b2d Bug 1643689 - Backed out changeset 10110918b6c0
This was causing |mach try auto| to stop selecting manifests.

Differential Revision: https://phabricator.services.mozilla.com/D90553
2020-09-17 12:57:39 +00:00
Mihai Alexandru Michis
fa05fd89fa Backed out changeset 0b196026ed59 (bug 1643689) for causing issues with manifest scheduling.
CLOSED TREE
2020-09-17 11:26:12 +03:00
Rob Lemley
142c37fe5d Bug 1661493 - Support extending OptimizationSchema in taskgraph projects. r=taskgraph-reviewers,ahal
In order for Thunderbird to effectively cut down on excess builds, there needs
to be a way to define taskgraph optimization strategies beyond what is made
available in the mozilla repository.
taskgraph.optimize.register_strategy gets half of the job done. The other piece
is task schema validation which checks optimizations against OptimizationSchema.

OptimizationSchema gets moved to taskgraph.optimize.schema so that it is not set
too early by taskgraph.util.schema. Projects then call set_optimization_schema()
to replace the default schema object. set_optimization_schema() needs to be called
in the project's taskgraph:register function before any transform code is loaded.

Differential Revision: https://phabricator.services.mozilla.com/D88429
2020-09-15 23:08:52 +00:00
Andrew Halberstadt
e8970ddcb9 Bug 1643689 - [taskgraph] enable manifest-scheduling on autoland, r=marco
Sets autoland to use the 'bugbug' test manifest loader. This is being enabled
as part of a temporary trial to see the impact it has on sheriffing.

Depends on D90159

Differential Revision: https://phabricator.services.mozilla.com/D90160
2020-09-14 23:12:31 +00:00
Andrew Halberstadt
ca0aefcd5b Bug 1643689 - [taskgraph] Fix error in 'split_bugbug_args', r=marco
The dict needs to be passed to the last two substrategies, not just the last
one.

Differential Revision: https://phabricator.services.mozilla.com/D90159
2020-09-14 23:08:28 +00:00
Andrew Halberstadt
24cddd5507 Bug 1634207 - Add some try-only windows7-32-qr test tasks, r=jmaher
These tasks can only be selected on try by passing `--full` to |mach try fuzzy|
or |mach try chooser|. E.g:

    $ ./mach try fuzzy --full -q "'windows7-32-qr"

Differential Revision: https://phabricator.services.mozilla.com/D89923
2020-09-14 15:37:22 +00:00
Andrew Halberstadt
0845c6922f Bug 1656465 - Drop the 'remove_on_projects' feature from the Backstop optimization, r=marco
In the past, the 'backstop' optimization was applied to tasks by default across
all projects, even though it only really made sense on autoland. To choose what
would happen on non-autoland branches, we invented this 'remove_on_projects'
concept.

These days, we only apply the backstop optimization in the first place for
autoland. So 'remove_on_projects' is no longer necessary.

Depends on D88149

Differential Revision: https://phabricator.services.mozilla.com/D88150
2020-09-10 14:42:10 +00:00
Andrew Halberstadt
455f1d3e89 Bug 1656465 - [taskgraph.optimize] Rename 'push-interval-{10,20}' strategies to 'expanded' and 'backstop' respectively, r=marco
This removes the last uses of the 'push-interval-10' and 'push-interval-20' strategies.
They are being removed because they are dangerous in that its easy to accidentally not run
tasks when they should.

Instead, task authors should decide whether they want their tasks to run on
"backstop" pushes (run everything) or "expanded" pushes (run more than usual,
but still not as much as a backstop). Note that using "expanded" means the task
will *also* run on backstop pushes. It'll just additionally run on "expanded"
pushes.

In practice 'backstop' pushes will be every 20th push and 'expanded' pushes
will be every 10th push. Though this may vary due to the time component in
backstops.

Differential Revision: https://phabricator.services.mozilla.com/D89503
2020-09-10 14:47:02 +00:00
Andrew Halberstadt
3abd53ae2c Bug 1656465 - [taskgraph.optimize] Refactor "optimized-backstop" pushes into "expanded" pushes, r=marco
This is a nomenclature change + refactoring. Now there is only a single
"backstop" push. Which is currently set to every 20th push on autoland (or
every push on non-autoland branches).

Now there is also a concept of an "expanded" push. These are pushes that run
more stuff than usual, but not as much as a backstop normally would. These are
currently set to run at half the interval of a backstop.

Concretely, here are the strategy changes:

* Renamed 'backstop' -> 'skip-unless-backstop'
* Introduced the 'skip-unless-expanded' strategy which has 'skip-unless-backstop' baked in
* Merged 'optimized-backstop' into the 'test' strategy (with expanded comments)
* Baked both 'skip-unless-expanded' and 'skip-unless-backstop' into the 'test' strategy

Differential Revision: https://phabricator.services.mozilla.com/D89501
2020-09-11 15:42:33 +00:00
Andrew Halberstadt
fba47918cb Bug 1656465 - [taskgraph.optimize] Implement a 'Not' composite strategy, r=marco
It turns out that 'Not' is needed to negate "backstops". E.g, we normally
we want to use a pattern like so:

    All("skip-unless-backstop", "test")

Since 'skip-unless-backstop' returns False on backstop pushes, it disables
the test strategy there.

However, suppose we wanted to run a special optimization, *only* on backstop
pushes. I.e, the opposite of the above example. Then we need to use:

    All(Not("skip-unless-backstop"), "test-backstop")

Depends on D89500

Differential Revision: https://phabricator.services.mozilla.com/D89734
2020-09-11 09:07:21 +00:00
Andrew Halberstadt
3cffeac488 Bug 1656465 - [taskgraph.optimize] Allow 'split_bugbug_arg' to work with arbitrary number of substrategies, r=marco
This still assumes that the bugbug-based strategy is last however.

Differential Revision: https://phabricator.services.mozilla.com/D89500
2020-09-10 14:47:14 +00:00
Andrew Halberstadt
05dae59107 Bug 1656465 - [taskgraph] Consider all pushes to release branches as 'backstops', r=marco
The intent of a "backstop" push, is to run everything so we can be absolutely sure that
the push in question does not cause any regressions.

Previously, backstops were thought to be only something that ran on autoland.
This was because the other branches *already* ran everything so the concept of
a "backstop" didn't make much sense.

But going by the above definition, it would make more sense to say that *every*
non autoland (or try) push is a backstop. Since the intent there is to run
everything to avoid regressions.

This change will allow us to simplify our optimization algorithms.

Differential Revision: https://phabricator.services.mozilla.com/D89499
2020-09-10 14:40:44 +00:00
Dorel Luca
79e0eba4b3 Backed out changeset 4123a3bc6173 (bug 1664300) as requested by dev 2020-09-11 21:32:06 +03:00
Joel Maher
70b89b5091 Bug 1664300 - double the frequency of windows perf tests temporarily. r=ahal
temporarily double the frequency of windows perf tests

Differential Revision: https://phabricator.services.mozilla.com/D89832
2020-09-11 12:24:14 +00:00
Geoff Brown
d82ebdb5f3 Bug 1663029 - Run most android-em plain opt tests as tier 1; r=bc
Corresponding debug and shippable tests already run as tier 1, but the plain
opt tests (which run on autoland and try) currently run as tier 2, apparently by
accident.

Differential Revision: https://phabricator.services.mozilla.com/D89255
2020-09-08 10:10:00 +00:00
Gregory Mierzwinski
18a8a6a848 Bug 1662777 - Fix cron tasks for power tests. r=perftest-reviewers,Bebe
Differential Revision: https://phabricator.services.mozilla.com/D89157
2020-09-08 13:14:25 +00:00
Sylvestre Ledru
da34b6a58e Bug 1661514 - Reformat some python files with black 20.8b1 r=rstewart
# ignore-this-changeset

Depends on D88711

Differential Revision: https://phabricator.services.mozilla.com/D88712
2020-09-07 14:05:10 +00:00
Mihai Tabara
e47580fde2 Bug 1661673 - remove esr68 references.r=releng-reviewers,aki DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D88618
2020-08-31 07:59:28 +00:00
Mihai Tabara
dcad44f932 Bug 1661673 - make esr78 not next-esr.r=releng-reviewers,aki DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D88591
2020-09-04 20:35:04 +00:00
Andrew Halberstadt
8f45b2b0d4 Bug 1650406 - [taskgraph] Never run 'upload-symbols' tasks with |mach try auto|, r=marco
Differential Revision: https://phabricator.services.mozilla.com/D88874
2020-09-02 20:20:26 +00:00
Andrew Halberstadt
b995cc5a0c Bug 1650406 - [ci] Ensure 'test-verify' tasks use the 'test' strategy with |mach try auto|, r=marco
Differential Revision: https://phabricator.services.mozilla.com/D88873
2020-09-02 20:19:33 +00:00
Ricky Stewart
4c6985333a Bug 1659539 - [python-test] Remove '--python' and stop using pipenv to manage virtualenvs r=ahal
Pipenv is heavy weight and overkill for the purposes it is being used. We'd like to remove it from the tree and |mach python-test| was one of the last remanining use cases.

Remove the `--python` command-line argument as a result. Users who wish to run unit tests with Python 2 can do `MACH_PY2=1 ./mach python-test ...` or `python2 ./mach python-test ...`.

Also update a few unit tests that would break otherwise in the presence of this change.

There were a couple lines in the `setup.py` for `mozlog` that were problematic for tests and was resulting in errors due to the `mozlog` plugin being loaded by `pytest` more than once. We just delete those lines and bump up the major version number of the package to fix it.

Differential Revision: https://phabricator.services.mozilla.com/D88296
2020-09-02 17:05:24 +00:00