The previous patch got backed out, and couldn't be patched itself, so here's a new one.
Differential Revision: https://phabricator.services.mozilla.com/D62844
--HG--
extra : moz-landing-system : lando
Add duration estimates to push summary. Refactored preview script - needed to be moved in order to import module.
Differential Revision: https://phabricator.services.mozilla.com/D61195
--HG--
rename : tools/tryselect/formatters/preview.py => tools/tryselect/preview.py
extra : moz-landing-system : lando
Changes:
Do not run `linux32` builds on `try` or `autoland` by default, but ensure it is able to run on all other repos (eg. `mozilla-beta`).
Filter out all tasks with `linux-shippable` in the name, including builds, auxiliary tasks (balrog, etc).
Differential Revision: https://phabricator.services.mozilla.com/D58982
--HG--
extra : moz-landing-system : lando
Changes:
Run `xpcshell` test suite on ubuntu1804 for all platforms except `linux64-ccov`.
Modify the test in `test_fuzzy.py` to refer to the new `test-linux1804` xpcshell task label.
Add a new test in `test_fuzzy.py` to test the `-q` functionality without a test path.
Differential Revision: https://phabricator.services.mozilla.com/D58740
--HG--
extra : moz-landing-system : lando
This should lead to the chunking of L10n tasks on try to match the base
release.
Differential Revision: https://phabricator.services.mozilla.com/D58449
--HG--
extra : moz-landing-system : lando
This allows easy testing against staging worker types, without needing to
change anything in-tree.
Differential Revision: https://phabricator.services.mozilla.com/D58017
--HG--
extra : moz-landing-system : lando
Changes:
Demote linux32-shippable/opt tasks to tier 2 on all repositories. Other linux32 jobs are defined but do not appear to run.
Limit the build of linux32-shippable/opt to `try`/`mozilla-central`.
Differential Revision: https://phabricator.services.mozilla.com/D58207
--HG--
extra : moz-landing-system : lando
Changes:
Demote linux32-shippable/opt tasks to tier 2 on all repositories. Other linux32 jobs are defined but do not appear to run.
Limit the build of linux32-shippable/opt to `try`/`mozilla-central`.
Differential Revision: https://phabricator.services.mozilla.com/D58207
--HG--
extra : moz-landing-system : lando
Changes:
Remove `crashtest`, `mochitest-gpu`, `mochitest` and `xpcshelltest` from running with ubuntu1604.
Enable the above tests to run with ubuntu1804 image under `linux1804-64` label.
Differential Revision: https://phabricator.services.mozilla.com/D58464
--HG--
extra : moz-landing-system : lando
This is a minimal implementation that allows running siging tasks against
a recent release, without doing full builds.
Differential Revision: https://phabricator.services.mozilla.com/D58019
--HG--
extra : moz-landing-system : lando
Changes:
Change the python version used in mozharness testing to python3.6 as that's what the `linter` docker image has, not `python3.5`.
Promote the tier of mozharness-py3 test to tier 1 and run it on all repositories to ensure python3 compatibility for future changes.
Differential Revision: https://phabricator.services.mozilla.com/D58209
--HG--
extra : moz-landing-system : lando
Changes:
Remove any special piping that was put in place to support running tests against debian10-test docker image. Note that this change does not actually remove the `debian10-test` dockerfile or associated files, just the ability to select its usage from the `mach try fuzzy` interface.
Differential Revision: https://phabricator.services.mozilla.com/D57016
--HG--
extra : moz-landing-system : lando
The docs used to recommend running 'watchman version' from the profile file.
But this doesn't actually seem to work for me. I don't remember why I even put
that in there. I finally took the time to get watchman set up as a systemd
service. This is just sharing the knowledge.
Differential Revision: https://phabricator.services.mozilla.com/D52404
--HG--
extra : moz-landing-system : lando
The name 'templates' originally came from the fact that JSON-e templates were
used to apply the configuration. Now that these no longer exist, the name
doesn't make any sense.
I'm not sure 'task_configs' is much better, but it at least makes sense given
that these are values that populate 'try_task_config.json'.
Differential Revision: https://phabricator.services.mozilla.com/D51418
--HG--
rename : tools/tryselect/templates.py => tools/tryselect/task_config.py
rename : tools/tryselect/test/test_templates.py => tools/tryselect/test/test_task_configs.py
extra : moz-landing-system : lando
Handles 'env' and 'chemspill-prio' configs in the transforms. The 'rebuild'
task config is purposefully excluded from the full_task_graph and instead
handled at the target_tasks stage. Otherwise if a user ran '--rebuild 20' then
retriggered one of those tasks, they'd instead get another 20 which is almost
certainly not what we want.
Differential Revision: https://phabricator.services.mozilla.com/D51417
--HG--
extra : moz-landing-system : lando
Also converts the 'artifact' from a Template to a TryConfig. So this changes the config from:
{
'templates': {
'artifact': {
'enabled': 1
}
}
}
to:
{
'use-artifact-builds': True
}
Differential Revision: https://phabricator.services.mozilla.com/D51416
--HG--
extra : moz-landing-system : lando
Pernosco doesn't currently work with artifact builds. This just makes sure we don't waste
time and resources (until it is fixed).
Differential Revision: https://phabricator.services.mozilla.com/D54050
--HG--
extra : moz-landing-system : lando
Changes:
Add Ubuntu 18.04 `dockerfile`, support files and `ubuntu1804-test-system-setup.sh` that slightly differs from `ubuntu1604-test-system-setup.sh` in package contents.
Add a temporary flag to `try fuzzy` selector, taskcluster decision and taskgraphs to enable selection of Ubuntu 18.04 docker image to run linux tests.
Differential Revision: https://phabricator.services.mozilla.com/D53750
--HG--
extra : moz-landing-system : lando
This gives developers the ability to request analysis from the Pernosco
service. When this flag is set, Pernosco will examine the push for relevant
failures, analyze them and then send a link to the generated report.
Previously developers needed to request access to a whitelist whereupon all
their try pushes were analyzed. Developers currently on this whitelist who
would like to opt-out can run |mach try --no-persnosco| to do so.
Differential Revision: https://phabricator.services.mozilla.com/D52419
--HG--
extra : moz-landing-system : lando
This task cannot succeed on try, because it doesn't have the permissions
to upload the generated docs. Let's just disallow people from selecting it.
Differential Revision: https://phabricator.services.mozilla.com/D51919
--HG--
extra : moz-landing-system : lando
Refactored the recursion to improve its reliability, and added a caching layer.
Differential Revision: https://phabricator.services.mozilla.com/D50267
--HG--
extra : moz-landing-system : lando
A requested addition to the estimates in the preview pane, showing how large the requested set of tasks is compared to everyone else's set.
Differential Revision: https://phabricator.services.mozilla.com/D50076
--HG--
extra : moz-landing-system : lando
If 'fzf' was installed by mach, then check it's up to date and force update if needed.
Differential Revision: https://phabricator.services.mozilla.com/D49597
--HG--
extra : moz-landing-system : lando
The duration file downloader uses the cache directory created by taskgraph generation.
Differential Revision: https://phabricator.services.mozilla.com/D48705
--HG--
extra : moz-landing-system : lando
An error crept in, resulting in:
```
[task ...] InterpreterError: InterpreterError: infix: [..] expects integer [..] integer
```
At some point, `suite` became a string name and not an object with a
string `name` member. However, in the interim, the diversity of
`command` structures has made the template approach untenable.
Therefore, this commit converts `GeckoProfile` to a `TryConfig`. The
existing test clearly wasn't helpful, and it doesn't really map to a
`TryConfig` test, so it was removed.
Differential Revision: https://phabricator.services.mozilla.com/D41603
--HG--
extra : moz-landing-system : lando
Adds command line option for developers to run tests against experimental debian 10 image (from D42597).
This is an experimental flag and will be removed once debian 10 image is used for production CI tests.
Differential Revision: https://phabricator.services.mozilla.com/D44236
--HG--
extra : moz-landing-system : lando
Stop running all Fennec functional (non-performance) tests:
- stop running all Android 4.3 tests
- switch android-em-7 cppunit and android-hw jittest from the Fennec apk to the
geckoview apk (no difference in behavior expected)
- stop running Android 7.0 marionette tests, since they also run against Fennec
- remove android-em-4.* references from taskcluster configs
- remove android instance: extra-large references from taskcluster configs,
since they only affect aws, which is no longer used for Android
Android-hw raptor tests running against Fennec remain; I will prepare a separate
patch for those.
Differential Revision: https://phabricator.services.mozilla.com/D43684
--HG--
extra : moz-landing-system : lando
The `./mach try {fuzzy,chooser}` commands now support a `--visual-metrics-jobs`
option which can be used to pass the job descriptions to the visual-metrics
task.
Differential Revision: https://phabricator.services.mozilla.com/D41878
--HG--
extra : moz-landing-system : lando
The `./mach try {fuzzy,chooser}` commands now support a `--visual-metrics-jobs`
option which can be used to pass the job descriptions to the visual-metrics
task.
Differential Revision: https://phabricator.services.mozilla.com/D41878
--HG--
extra : moz-landing-system : lando
For now, this just:
- updates the TreeHerder symbol
- includes the `--browsertime` extra option
The actual test jobs will react to the `--browsertime` extra option
and add dependencies, etc, as appropriate.
Differential Revision: https://phabricator.services.mozilla.com/D41605
--HG--
extra : moz-landing-system : lando
The current behaviour of resolve_tests_by suite is to look for exact
matches between the passed in path and the paths associated with each
test. But that doesn't work for cases where you want to path in an
ancestor path and run all the tests under that path.
This changeset makes resolve_tests_by_suite return a list of the input
paths that prefix-match one or more tests in a given suite, sorted by
suite. It is assumed that the harness itself will be able to handle
such inputs even when they don't correspond to a directory that
actualy contains tests.
Differential Revision: https://phabricator.services.mozilla.com/D42476
--HG--
extra : moz-landing-system : lando
Often times, PGO builds aren't required for testing things (in particular,
testing release automation). However, at least when testing release automation,
we do need to use the shippable build type.
Add an option to mach try that will disable using the 3-tier PGO jobs.
Differential Revision: https://phabricator.services.mozilla.com/D36365
--HG--
extra : moz-landing-system : lando
Templates invoke the `morph` logic, which is somewhat confusing and inflexible.
Update the machinery to support setting other `try_task_config` values.
Differential Revision: https://phabricator.services.mozilla.com/D36364
--HG--
extra : moz-landing-system : lando
Factor out the logic for calculating `try_task_config` from `push_to_try`,
so it can be called only for those selectors that need it.
Differential Revision: https://phabricator.services.mozilla.com/D36363
--HG--
extra : moz-landing-system : lando
Changes:
- require `--full` keyword for `./mach try fuzzy` in order to schedule android-hw jobs to hopefully reduce the backlog
Differential Revision: https://phabricator.services.mozilla.com/D33834
--HG--
extra : moz-landing-system : lando
- sm-shell: Selects shell only test cases that shouldn't require a full browser build.
- sm-all: Selects test cases that may require a full browser build.
Differential Revision: https://phabricator.services.mozilla.com/D28994
--HG--
extra : moz-landing-system : lando
Bug 1484243 removed the --git argument and made the VCS auto-detected,
so we should no longer suggest passing in that argument in error
messages.
Differential Revision: https://phabricator.services.mozilla.com/D30257
--HG--
extra : moz-landing-system : lando
Since we need to generate the full_task_set as a prereq to the target_task_set,
and since getting from full_task_set -> target_task_set is trivial.. we might
as well save both computed sets to the cache while we have them. This means users
that run:
$ ./mach try fuzzy
and then run:
$ ./mach try fuzzy --full
(or vice versa)
Will only incur task generation once. It also means that the 'watchman' trigger
will cache both taskgraphs.
Differential Revision: https://phabricator.services.mozilla.com/D29557
--HG--
extra : moz-landing-system : lando
This adds a 'watchman.json' file to /tools/tryselect and some documentation on
how to use it. Tl;dr, install watchman and then:
$ cd path/to/gecko
$ watchman -j < tools/tryselect/watchman.json
Differential Revision: https://phabricator.services.mozilla.com/D28771
--HG--
extra : moz-landing-system : lando