This patch prevents speedometer tests from running on all android builds and also prevents chrome tests from running there.
Differential Revision: https://phabricator.services.mozilla.com/D72727
This patch changes how Google Chrome for Android is deployed. Rather than relying on automatic updates, we will use tooltool to download the APK and install it ourselves. Some changes were done in taskcluster to remove a hack that was put in place to disable interal tooltool downloads (the issue is resolved now).
A tooltool manifest is added for this, and to keep ourselves organized, all manifests (including the playback ones) are moved into a folder called `tooltool-manifests`.
Differential Revision: https://phabricator.services.mozilla.com/D72198
It requires a newer version of bison to build, which we get by using a
more recent version of Debian for the toolchain build (Debian 9 being
the version we use for the builds that depend on wine, so it will work
there).
Differential Revision: https://phabricator.services.mozilla.com/D72254
This patch uses the new push-interval-10 to schedule the linux, windows plain and aarch64
builds on autoland every 10th push.
Tested locally with a local checkout whose pushlog_id was not divisible
by 10 using parameters.yml downloaded from the Gecko Decision Task using
./mach taskgraph optimized --verbose --parameters /tmp/parameters.yml
parameters.yml from autoland showed the following optimizations.
0:56.13 PushIntervalStrategy: Removing task build-linux64-aarch64/opt interval 10
0:56.13 PushIntervalStrategy: Removing task build-linux64-plain/debug interval 10
0:56.13 PushIntervalStrategy: Removing task build-signing-win64-aarch64/opt interval 10
0:56.13 PushIntervalStrategy: Removing task build-win64-aarch64/debug interval 10
0:56.13 PushIntervalStrategy: Removing task build-win64-plain/debug interval 10
0:56.18 PushIntervalStrategy: Removing task valgrind-linux64-valgrind/opt interval 10
while parameters.yml from mozilla-central did not show any PushIntervalStrategy
optimizations.
Differential Revision: https://phabricator.services.mozilla.com/D70182
The `sphinx.ext.graphviz` extension requires `dot` to be installed.
That's default on rtd, which is why we use it in the docs.
Adding this to the lint image as we use that for document building,
and it shouldn't hurt.
Differential Revision: https://phabricator.services.mozilla.com/D72395
The custom retrigger actions work well on linux and android-em, but fail
on windows, osx, and android-hw. At least part of the problem seems to be
the worker implementation, but I am not entirely clear on what goes wrong.
It looks like I won't have much more time for retrigger improvements in the
near future, so I'd prefer to "turn off" the actions on tasks known to fail.
I found helpful examples for the 'context' parameter in
https://searchfox.org/mozilla-central/source/taskcluster/docs/actions.rst
Differential Revision: https://phabricator.services.mozilla.com/D72233
This adds a parameter that will cause a task to sum all the confidence
thresholds of the relative manifests it contains to gather a larger overall
task confidence.
This also adds a new strategy + shadow-scheduler to go along with it.
Differential Revision: https://phabricator.services.mozilla.com/D71314
Doing this in the ship phase instead of push lets us avoid shipping on
flathub before the actual release.
And, upload flatpaks for firefox release candidates to flathub's "beta"
channel so we can get feedback on them and QA can also get at them.
Differential Revision: https://phabricator.services.mozilla.com/D71919
This patch adds the new live site tests as Raptor-Browsertime tasks in CI. These will be scheduled to run through the general-perf-testing cron task on Monday/Wednesday/Friday.
Differential Revision: https://phabricator.services.mozilla.com/D69053
This patch fixes a failure with encodings when opening JSONs. It changes the file opening portion to ignore these types of errors - they are occuring because of the different language being used. We have no need for this data so we can safely ignore them. One other change that is being done here is adding additional error logging because it was possible to lose an error stack trace.
Differential Revision: https://phabricator.services.mozilla.com/D70939
This change is beneficial for two reasons:
1) Improvement on the single responsibility principle
2) Platform filter isn't 'bugbug' specific. E.g, the 'relevant tests' optimizer
could also theoretically use this. Having it as a standalone optimizer allows
us to compose it with other strategies.
Differential Revision: https://phabricator.services.mozilla.com/D71210
This ensures we don't run every build with every push via ./mach try auto. It
introduces a new 'optimization-overrides' try_config that can be used to
replace optimizations. For now, there is no user interface to pass this in via
the 'mach try' command line.
Differential Revision: https://phabricator.services.mozilla.com/D68207
Changes:
Applies the `filter_tasks_by_blacklist` method to try syntax pushes as well.
- moved `TARGET_TASK_BLACKLIST`and `filter_tasks_by_blacklist` method to live in `taskcluster/taskgraph/target_tasks.py`.
- removed existing filters against `ccov, windows10-aarch64` and `android-hw` filters against try syntax pushes.
- update imports for `fuzzy` and `chooser` selectors to refer to the new location of `filter_tasks_by_blacklist` method.
The reason for moving the logic (again) from `tools/tryselect` to `taskcluster/` is due to the placement of `try_option_syntax` and `target_tasks` files and both of those files handle the processing of `mach try syntax` pushes.
Differential Revision: https://phabricator.services.mozilla.com/D71698
The clang_rt.builtins lib files produced by the 1stage build do not include
functions necessary for 128bit integers. This functionality is required by the
OpenPGP libraries that Thunderbird is using, specifically Botan's bigint module.
When compiler-rt is built with MSVC, these functions are not included
by design.
Differential Revision: https://phabricator.services.mozilla.com/D71785
* For wrench builds, the clang toolchain must now be fetched and be
present in PATH for bindgen to work. When building OSMesa, we must
therefore set `LLVM_CONFIG=no` so that it does not attempt to build
llvmpipe.
* For wrench Mac cross-compiles, we must be careful to expose CFLAGS
and similar variables using the target-specific variable names, so
that host builds do not attempt to use flags intended for the
target. When building OSMesa we must use the generic variable `CC`,
so now we additionally set `HOST_CC`, so that host builds use the
host variable rather than the generic one.
* Similarily, for wrench android builds we must use a fork of
cargo-apk which sets the target-specific variables rather than the
generic ones. Otherwise we would attempt to use the NDK toolchain
for host builds.
Differential Revision: https://phabricator.services.mozilla.com/D70031
Firefox still does not default to Wayland when it's available (or when
X11 socket is not accessible). This can be changed by MOZ_ENABLE_WAYLAND=1
but as it's not the default, it's safer to just drop access to Wayland.
Differential Revision: https://phabricator.services.mozilla.com/D71448