Initially we didn't want to do that since we do not need to cache dependencies from our own
maven repository. But Android Components can introduce other third-party transitive
dependencies from other repositories (like Android X) and those need to be cached.
* Use nightly Fenix variant.
* Run the tests in PR.
* Update visual-metrics scripts to include the similarity metrics.
* Use python3.5 in visual-metrics docker.
* Install wget in the docker.
* Use python3.6 hashes instead of python3.5.
* Undo run-visual-metrics.py python changes.
* Upgrade python setuptools version to 46.1.3.
* Add setuptools to transitive dependency list.
* Undo PR test changes.
* Remove setuptools install line and use requirements.txt instead.
* Undo PR test changes.
* Fix geckodriver artifact suffix.
* Test a browsertime task.
* Revert browsertime test.
* Add visual-metrics docker type.
* Add required browsertime toolchain fetches.
* Add browsertime tests for technical and visual metrics.
* Run browsertime tests in a cron task.
* Run visual metrics on all browsertime tests.
* Use spaces instead of tabs, and resolve visual-metric nits.
* Enable browsertime on pull request for testing.
* Restrict PR tests to amazon on browsertime.
* First attempt using multi_dep.
* Add a primary dependency to browsertime.
* Try by not popping.
* Debug prints.
* Make one grouping per browsertime task.
* Try without the multi_dep transform.
* Delete dependent-tasks in visual-metrics transformer.
* Update setuptools installed and copy run-on-tasks-for.
* Use get when getting run-on-tasks-for.
* Add new pinned requirements.
* Try it.
* Set run-on-tasks-for properly.
* Remove print statement.
* Remove single_dep loader, and print statements.
* Remove run-on-tasks-for testing setting.
* Restart testing, and set user to root in visual-metrics Docker.
* Remove testing settings.
* Remove fetch-content from Docker.
* Change attributes grouping method.
* Run all tests as a check.
* Undo testing changes, and fix a bad test name.
There were a couple of errors in the original pull request for this bug:
- The raptor tasks had duplicated dependencies.
- The filename of the minidump_stackwalk artifact was incorrect.
The mozilla-central ffmpeg toolchain (used in Bug 1613479/https://github.com/mozilla-mobile/fenix/pull/8780) has an
artifact that does not start with `public/build/` (it starts with just
`public/`). To easily support that, we want to set the `toolchain-artfiact`
attribute for that task.
We switched `index_search` to be a job-type in
[taskgraph](932b4cf48c)
which pass through `attributes` from the task definition (and is also more
future proof for adding fenix-specific toolchain tasks). This updates taskgraph
and the consumers of the current toolchain.