Also adds docs for how to run the Maintenance Service tests, which is another thing that the --enable-unverified-updates will be useful for.
Differential Revision: https://phabricator.services.mozilla.com/D148870
This patch removes all the code related to the second task (the `*-vismet` tasks) we were using for visual-metrics processing.
Differential Revision: https://phabricator.services.mozilla.com/D142837
The 'release_artifacts' attribute of the Task object doesn't exist in upstream
taskgraph. This attribute is only needed by certain kinds and likely doesn't
belong on the general purpose Task container. Move it to an attribute instead.
This was tested via `taskgraph --diff` on all release tasks. While there is a
diff in that 'release_artifacts' moves from the top-level to under an
attribute, there is no change to the payload of any tasks. So this shouldn't
affect any release graphs.
Depends on D140081
Differential Revision: https://phabricator.services.mozilla.com/D140082
Without this, the desktop nightly graph does not include upload-symbols
tasks for mac, because these tasks don't have the macosx64-shippable
build_platform due to the split x64 / aarch64 build.
Differential Revision: https://phabricator.services.mozilla.com/D139149
Rather than defining a distinct `Parameter` class for Gecko, this now uses the
`extend_parameters_schema` utility function (which mobile repos are already
using).
As a consequence, shared parameters are now defined in standalone taskgraph.
And only Gecko-specific parameters are listed in
`gecko_taskgraph/parameters.py`
The only exception is `project` which gets redefined so we can override the
standalone taskgraph default (since it derives `project` from the repo name,
which doesn't work for Gecko).
Differential Revision: https://phabricator.services.mozilla.com/D134515
Rather than defining a distinct `Parameter` class for Gecko, this now uses the
`extend_parameters_schema` utility function (which mobile repos are already
using).
As a consequence, shared parameters are now defined in standalone taskgraph.
And only Gecko-specific parameters are listed in
`gecko_taskgraph/parameters.py`
The only exception is `project` which gets redefined so we can override the
standalone taskgraph default (since it derives `project` from the repo name,
which doesn't work for Gecko).
Differential Revision: https://phabricator.services.mozilla.com/D134515
This patch introduces a new field maven-artifacts which allows specifying a
list of maven artifacts that will be generated by a build and published to our
maven repository.
This allows us to split up GeckoView into separate maven packages.
Differential Revision: https://phabricator.services.mozilla.com/D133790
Rather than defining a distinct `Parameter` class for Gecko, this now uses the
`extend_parameters_schema` utility function (which mobile repos are already
using).
As a consequence, shared parameters are now defined in standalone taskgraph.
And only Gecko-specific parameters are listed in
`gecko_taskgraph/parameters.py`
The only exception is `project` which gets redefined so we can override the
standalone taskgraph default (since it derives `project` from the repo name,
which doesn't work for Gecko).
Differential Revision: https://phabricator.services.mozilla.com/D134515
This attribute isn't necessary as e10s is the default. Instead consumers can
check if the string '1proc' appears in the unittest_variant attribute.
Depends on D133225
Differential Revision: https://phabricator.services.mozilla.com/D133226
This patch adds a new toolchain run property: toolchain-env which allows
specifying additional environment variables that will be added to the worker
when consuming the toolchain artifact.
Differential Revision: https://phabricator.services.mozilla.com/D131987
This includes:
transforms/tests.py -> transforms/test/__init__.py
transforms/raptor.py -> transforms/test/raptor.py
This is a pre-cursor to splitting the file up into multiple smaller files under
the new 'test' transform directory.
Differential Revision: https://phabricator.services.mozilla.com/D132068
This will make it easy for consumers to check whether a set of tasks are on the
same test setting or not by comparing their hash.
This also uses a 'ReadOnlyDict' to ensure the setting isn't modified later.
Differential Revision: https://phabricator.services.mozilla.com/D131285
This also adds way to bypass the 'check_schema' call since this schema's keys
contains strings from `variants.yml` which sometimes have underscoes in them.
Differential Revision: https://phabricator.services.mozilla.com/D131282
This will:
1. Give consumers of test tasks a way to reliable determine the configuration
it is running under without needing to parse magic labels.
2. Consolidate much of the logic around parsing the build and test platform
strings.
Differential Revision: https://phabricator.services.mozilla.com/D131281
Often we have two variants that we want to test together. The only way to do
this currently is to create a 3rd variant that is the sum of the previous two.
This feature will allow tasks to define multiple variants using the '+' token.
E.g:
variants: ["fission", "webgl-ipc", "fission+webgl-ipc"]
The third variant there will first apply the 'fission' configuration, then the
'webgl-ipc' configuration (in order).
Differential Revision: https://phabricator.services.mozilla.com/D130399
Listing contacts next to the variant will provide a point of contact in case
there are questions around cost / capacity or relative importance of a given
variant.
Differential Revision: https://phabricator.services.mozilla.com/D129834
This also splits the blurb for the 'test' kind into a new file as it was
getting too long for kinds.rst. Having documentation for every kind in the same
file tends to lead towards uninformative documentation.
Differential Revision: https://phabricator.services.mozilla.com/D129830
Listing contacts next to the variant will provide a point of contact in case
there are questions around cost / capacity or relative importance of a given
variant.
Differential Revision: https://phabricator.services.mozilla.com/D129834
This also splits the blurb for the 'test' kind into a new file as it was
getting too long for kinds.rst. Having documentation for every kind in the same
file tends to lead towards uninformative documentation.
Differential Revision: https://phabricator.services.mozilla.com/D129830
For a long time two copies of the 'taskgraph' module have existed in parallel.
We've attempted to keep them in sync, but over time they have diverged and the
maintenance burden has increased.
In order to reduce this burden, we'd like to re-join the two code bases. The
canonical repo will be the one that lives outside of mozilla-central, and this
module will depend on it. Since they both have the same module name (taskgraph)
we need to rename the version in mozilla-central to avoid collisions.
Other consumers of 'taskgraph' (like mobile repos) have standardized on
'<project>_taskgraph' as their module names. So replicating that here as well.
Differential Revision: https://phabricator.services.mozilla.com/D127118
This update makes wgpu a vendored dependency instead of having it in gfx/wgpu.
## Notes
It relies on https://phabricator.services.mozilla.com/D123157
It has a quirk related to OpenGL ES backend. Previousy, we manually had to disable GL backend
in order to avoid vendoring WASM dependencies in. This time, manual editing is more complicated,
so instead this change adds a few cargo patch lines to point WASM dependencies to dummy projects.
The update also totally removes SPIRV-Cross, since the latest `wgpu` doesn't depend on it any more.
The compiled binary size for Gecko should improve with this.
Differential Revision: https://phabricator.services.mozilla.com/D123153
The interesting wrinkle here are the `MSIX(*-multi)` repackaging
tasks, which depend on (signed) langpacks. Said langpacks are
cross-platform and are produced on linux64 at this time.
Differential Revision: https://phabricator.services.mozilla.com/D119670
The interesting wrinkle here are the `MSIX(*-multi)` repackaging
tasks, which depend on (signed) langpacks. Said langpacks are
cross-platform and are produced on linux64 at this time.
Differential Revision: https://phabricator.services.mozilla.com/D119670
Not sure how it happened (probably copy-paste?) but a lot of Android jobs are
marked for "Android 4.0" (API 14) or "Android 4.2" (API 18) while really they
are all for Android 4.1 (API 16). This patch fixes that.
Differential Revision: https://phabricator.services.mozilla.com/D117050
Not sure how it happened (probably copy-paste?) but a lot of Android jobs are
marked for "Android 4.0" (API 14) or "Android 4.2" (API 18) while really they
are all for Android 4.1 (API 16). This patch fixes that.
Differential Revision: https://phabricator.services.mozilla.com/D117050
Not sure how it happened (probably copy-paste?) but a lot of Android jobs are
marked for "Android 4.0" (API 14) or "Android 4.2" (API 18) while really they
are all for Android 4.1 (API 16). This patch fixes that.
Differential Revision: https://phabricator.services.mozilla.com/D117050