summaryrefslogtreecommitdiffstats
path: root/taskcluster/ci
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-15 03:35:49 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-15 03:35:49 +0000
commitd8bbc7858622b6d9c278469aab701ca0b609cddf (patch)
treeeff41dc61d9f714852212739e6b3738b82a2af87 /taskcluster/ci
parentReleasing progress-linux version 125.0.3-1~progress7.99u1. (diff)
downloadfirefox-d8bbc7858622b6d9c278469aab701ca0b609cddf.tar.xz
firefox-d8bbc7858622b6d9c278469aab701ca0b609cddf.zip
Merging upstream version 126.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'taskcluster/ci')
-rw-r--r--taskcluster/ci/addon/kind.yml2
-rw-r--r--taskcluster/ci/android-l10n/kind.yml55
-rw-r--r--taskcluster/ci/android-startup-test/kind.yml129
-rw-r--r--taskcluster/ci/are-we-esmified-yet/kind.yml42
-rw-r--r--taskcluster/ci/artifact-build/kind.yml2
-rw-r--r--taskcluster/ci/attribution-l10n/kind.yml2
-rw-r--r--taskcluster/ci/attribution/kind.yml2
-rw-r--r--taskcluster/ci/beetmover-android-app/kind.yml47
-rw-r--r--taskcluster/ci/beetmover-components/kind.yml62
-rw-r--r--taskcluster/ci/beetmover-geckoview/kind.yml6
-rw-r--r--taskcluster/ci/build-apk/kind.yml518
-rw-r--r--taskcluster/ci/build-bundle/kind.yml213
-rw-r--r--taskcluster/ci/build-components/kind.yml134
-rw-r--r--taskcluster/ci/build-fat-aar/kind.yml6
-rw-r--r--taskcluster/ci/build-samples-browser/kind.yml64
-rw-r--r--taskcluster/ci/build/android-asan.yml1
-rw-r--r--taskcluster/ci/build/android-stuff.yml1
-rw-r--r--taskcluster/ci/build/android.yml1
-rw-r--r--taskcluster/ci/build/kind.yml4
-rw-r--r--taskcluster/ci/build/linux.yml7
-rw-r--r--taskcluster/ci/build/macosx.yml2
-rw-r--r--taskcluster/ci/build/windows.yml2
-rw-r--r--taskcluster/ci/code-review/kind.yml2
-rw-r--r--taskcluster/ci/condprof/kind.yml2
-rw-r--r--taskcluster/ci/config.yml231
-rw-r--r--taskcluster/ci/diffoscope/artifacts.yml2
-rw-r--r--taskcluster/ci/docker-image/kind.yml6
-rw-r--r--taskcluster/ci/fetch/browsertime.yml173
-rw-r--r--taskcluster/ci/fetch/toolchains.yml21
-rw-r--r--taskcluster/ci/fuzzing/kind.yml2
-rw-r--r--taskcluster/ci/generate-profile/kind.yml44
-rw-r--r--taskcluster/ci/hazard/kind.yml2
-rw-r--r--taskcluster/ci/instrumented-build/kind.yml88
-rw-r--r--taskcluster/ci/l10n-bump/kind.yml4
-rw-r--r--taskcluster/ci/l10n/kind.yml6
-rw-r--r--taskcluster/ci/mar-signing/kind.yml2
-rw-r--r--taskcluster/ci/openh264-plugin/kind.yml2
-rw-r--r--taskcluster/ci/perftest/android.yml25
-rw-r--r--taskcluster/ci/perftest/kind.yml2
-rw-r--r--taskcluster/ci/post-beetmover-components-dummy/kind.yml35
-rw-r--r--taskcluster/ci/post-signing/kind.yml36
-rw-r--r--taskcluster/ci/push-bundle/kind.yml73
-rw-r--r--taskcluster/ci/release-early-tagging/kind.yml9
-rw-r--r--taskcluster/ci/release-mark-as-shipped/kind.yml4
-rw-r--r--taskcluster/ci/release-notify-promote/kind.yml4
-rw-r--r--taskcluster/ci/release-notify-push/kind.yml13
-rw-r--r--taskcluster/ci/release-notify-ship/kind.yml7
-rw-r--r--taskcluster/ci/release-notify-started/kind.yml2
-rw-r--r--taskcluster/ci/release-notify-testrail/kind.yml85
-rw-r--r--taskcluster/ci/release-version-bump/kind.yml24
-rw-r--r--taskcluster/ci/repackage-msix/kind.yml3
-rw-r--r--taskcluster/ci/repackage-shippable-l10n-msix/kind.yml2
-rw-r--r--taskcluster/ci/repackage/kind.yml2
-rw-r--r--taskcluster/ci/repo-update/kind.yml2
-rw-r--r--taskcluster/ci/searchfox/kind.yml3
-rw-r--r--taskcluster/ci/signing-apk/kind.yml71
-rw-r--r--taskcluster/ci/signing-bundle/kind.yml41
-rw-r--r--taskcluster/ci/signing/kind.yml42
-rw-r--r--taskcluster/ci/source-test/android-compare-locales.yml47
-rw-r--r--taskcluster/ci/source-test/android-detekt.yml76
-rw-r--r--taskcluster/ci/source-test/android-lint.yml66
-rw-r--r--taskcluster/ci/source-test/buildconfig.yml68
-rw-r--r--taskcluster/ci/source-test/kind.yml8
-rw-r--r--taskcluster/ci/source-test/ktlint.yml59
-rw-r--r--taskcluster/ci/source-test/mozlint-android.yml1
-rw-r--r--taskcluster/ci/source-test/node.yml35
-rw-r--r--taskcluster/ci/source-test/python.yml2
-rw-r--r--taskcluster/ci/source-test/taskgraph.yml9
-rw-r--r--taskcluster/ci/startup-test/kind.yml2
-rw-r--r--taskcluster/ci/static-analysis-autotest/kind.yml2
-rw-r--r--taskcluster/ci/test-apk/kind.yml157
-rw-r--r--taskcluster/ci/test-components/kind.yml89
-rw-r--r--taskcluster/ci/test/awsy.yml2
-rw-r--r--taskcluster/ci/test/browsertime-desktop.yml82
-rw-r--r--taskcluster/ci/test/browsertime-mobile.yml68
-rw-r--r--taskcluster/ci/test/compiled.yml17
-rw-r--r--taskcluster/ci/test/kind.yml7
-rw-r--r--taskcluster/ci/test/misc.yml2
-rw-r--r--taskcluster/ci/test/mochitest.yml145
-rw-r--r--taskcluster/ci/test/reftest.yml71
-rw-r--r--taskcluster/ci/test/talos.yml40
-rw-r--r--taskcluster/ci/test/test-platforms.yml20
-rw-r--r--taskcluster/ci/test/test-sets.yml18
-rw-r--r--taskcluster/ci/test/variants.yml24
-rw-r--r--taskcluster/ci/test/web-platform.yml156
-rw-r--r--taskcluster/ci/test/xpcshell.yml39
-rw-r--r--taskcluster/ci/toolchain/android.yml20
-rw-r--r--taskcluster/ci/toolchain/dump-syms.yml8
-rw-r--r--taskcluster/ci/toolchain/hostutils.yml23
-rw-r--r--taskcluster/ci/toolchain/kind.yml1
-rw-r--r--taskcluster/ci/toolchain/llvm-symbolizer.yml30
-rw-r--r--taskcluster/ci/toolchain/macos-sdk.yml16
-rw-r--r--taskcluster/ci/toolchain/misc.yml51
-rw-r--r--taskcluster/ci/toolchain/rust.yml42
-rw-r--r--taskcluster/ci/ui-test-apk/kind.yml353
-rw-r--r--taskcluster/ci/updatebot/kind.yml6
-rw-r--r--taskcluster/ci/upload-symbols/kind.yml2
-rw-r--r--taskcluster/ci/valgrind/kind.yml2
-rw-r--r--taskcluster/ci/webrender/kind.yml2
99 files changed, 3707 insertions, 535 deletions
diff --git a/taskcluster/ci/addon/kind.yml b/taskcluster/ci/addon/kind.yml
index 84d616581b..eb24cf6a41 100644
--- a/taskcluster/ci/addon/kind.yml
+++ b/taskcluster/ci/addon/kind.yml
@@ -13,7 +13,7 @@ transforms:
- gecko_taskgraph.transforms.task:transforms
job-defaults:
- use-system-python: false
+ use-python: default
jobs:
tps-xpi:
diff --git a/taskcluster/ci/android-l10n/kind.yml b/taskcluster/ci/android-l10n/kind.yml
new file mode 100644
index 0000000000..8e5d35995d
--- /dev/null
+++ b/taskcluster/ci/android-l10n/kind.yml
@@ -0,0 +1,55 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - gecko_taskgraph.transforms.task:transforms
+
+job-defaults:
+ run-on-projects: []
+ treeherder:
+ kind: build
+ platform: fenix-android-all/opt
+ tier: 1
+ worker-type: tree
+ worker:
+ implementation: treescript
+ tags: []
+ bump: false
+ dontbuild: false
+ ignore-closed-tree: true
+ push: true
+
+jobs:
+ import:
+ name: android_l10n_import
+ description: Import strings from android-l10n repo
+ treeherder:
+ symbol: android-l10n(I)
+ worker:
+ source-repo: https://hg.mozilla.org/integration/autoland
+ android-l10n-import-info:
+ from-repo-url: https://github.com/mozilla-l10n/android-l10n
+ toml-info:
+ - toml-path: mozilla-mobile/fenix/l10n.toml
+ dest-path: mobile/android/fenix
+ - toml-path: mozilla-mobile/focus-android/l10n.toml
+ dest-path: mobile/android/focus-android
+ - toml-path: mozilla-mobile/android-components/l10n.toml
+ dest-path: mobile/android/android-components
+
+ sync:
+ name: android_l10n_sync
+ description: Sync android-l10n strings from central to beta
+ treeherder:
+ symbol: android-l10n(S)
+ worker:
+ source-repo: https://hg.mozilla.org/releases/mozilla-beta
+ android-l10n-sync-info:
+ from-repo-url: https://hg.mozilla.org/mozilla-central
+ toml-info:
+ - toml-path: mobile/android/fenix/l10n.toml
+ - toml-path: mobile/android/focus-android/l10n.toml
+ - toml-path: mobile/android/android-components/l10n.toml
diff --git a/taskcluster/ci/android-startup-test/kind.yml b/taskcluster/ci/android-startup-test/kind.yml
new file mode 100644
index 0000000000..d7fe550f99
--- /dev/null
+++ b/taskcluster/ci/android-startup-test/kind.yml
@@ -0,0 +1,129 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - gecko_taskgraph.transforms.job:transforms
+ - gecko_taskgraph.transforms.task:transforms
+
+job-defaults:
+ description: Runs UI tests for sanity checking startup on Nightly
+ treeherder:
+ kind: test
+ platform: 'nightly-start-test/opt'
+ tier: 1
+ worker-type: b-linux-gcp
+ worker:
+ docker-image: {in-tree: android-ui-tests}
+ max-run-time: 7200
+ env:
+ GOOGLE_APPLICATION_CREDENTIALS: '.firebase_token.json'
+ artifacts:
+ - name: public
+ path: /builds/worker/artifacts
+ type: directory
+ run:
+ using: run-commands
+ use-caches: false
+ run-on-projects: []
+
+jobs:
+ fenix-arm-nightly-robo-opt:
+ attributes:
+ build-type: fenix-nightly
+ shipping-product: fenix
+ description: Fenix Nightly Opt Robo Test (ARM)
+ dependencies:
+ signing: signing-apk-fenix-nightly
+ run:
+ secrets:
+ - name: project/mobile/firefox-android/fenix/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ pre-commands:
+ - ["cd", "mobile/android/fenix"]
+ commands:
+ - [wget, {artifact-reference: '<signing/public/build/target.arm64-v8a.apk>'}, '-O', app.apk]
+ - [python3, ../../../taskcluster/scripts/tests/test-lab.py, arm-start-test-robo, app.apk]
+ treeherder:
+ symbol: fenix-nightly(startup-arm-robo-opt)
+ worker:
+ env:
+ GOOGLE_PROJECT: moz-fenix
+
+ fenix-arm-nightly:
+ attributes:
+ build-type: fenix-nightly-firebase
+ shipping-product: fenix
+ dependencies:
+ signing: signing-apk-fenix-nightly-firebase
+ signing-android-test: signing-apk-fenix-android-test-nightly
+ run:
+ secrets:
+ - name: project/mobile/firefox-android/fenix/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ pre-commands:
+ - ["cd", "mobile/android/fenix"]
+ commands:
+ - [wget, {artifact-reference: '<signing/public/build/target.arm64-v8a.apk>'}, '-O', app.apk]
+ - [wget, {artifact-reference: '<signing-android-test/public/build/target.noarch.apk>'}, '-O', android-test.apk]
+ - [python3, ../../../taskcluster/scripts/tests/test-lab.py, arm-start-test, app.apk, --apk_test, android-test.apk]
+ treeherder:
+ symbol: fenix-nightly(startup-arm)
+ worker:
+ env:
+ GOOGLE_PROJECT: moz-fenix
+
+ focus-arm-nightly:
+ attributes:
+ build-type: focus-nightly-firebase
+ shipping-product: focus
+ dependencies:
+ signed-apk-debug-apk: signing-apk-focus-nightly-firebase
+ signed-apk-android-test: signing-apk-focus-android-test-nightly
+ run:
+ secrets:
+ - name: project/mobile/firefox-android/focus-android/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ pre-commands:
+ - ["cd", "mobile/android/focus-android"]
+ commands:
+ - [wget, {artifact-reference: '<signed-apk-debug-apk/public/build/target.arm64-v8a.apk>'}, '-O', app.apk]
+ - [wget, {artifact-reference: '<signed-apk-android-test/public/build/target.noarch.apk>'}, '-O', android-test.apk]
+ - [python3, ../../../taskcluster/scripts/tests/test-lab.py, arm-start-test, app.apk, --apk_test, android-test.apk]
+ treeherder:
+ symbol: focus-nightly(startup-arm)
+ worker:
+ env:
+ GOOGLE_PROJECT: moz-focus-android
+
+ focus-arm-nightly-robo-opt:
+ attributes:
+ build-type: focus-nightly
+ shipping-product: focus
+ description: Focus Nightly Opt Robo Test (ARM)
+ dependencies:
+ signing: signing-apk-focus-nightly
+ run:
+ secrets:
+ - name: project/mobile/firefox-android/focus-android/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ pre-commands:
+ - ["cd", "mobile/android/focus-android"]
+ commands:
+ - [wget, {artifact-reference: '<signing/public/build/target.arm64-v8a.apk>'}, '-O', app.apk]
+ - [python3, ../../../taskcluster/scripts/tests/test-lab.py, arm-start-test-robo, app.apk]
+ treeherder:
+ symbol: focus-nightly(startup-arm-robo-opt)
+ worker:
+ env:
+ GOOGLE_PROJECT: moz-focus-android
diff --git a/taskcluster/ci/are-we-esmified-yet/kind.yml b/taskcluster/ci/are-we-esmified-yet/kind.yml
deleted file mode 100644
index f2c462f455..0000000000
--- a/taskcluster/ci/are-we-esmified-yet/kind.yml
+++ /dev/null
@@ -1,42 +0,0 @@
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
----
-loader: gecko_taskgraph.loader.transform:loader
-
-kind-dependencies:
- - toolchain
- - fetch
-
-transforms:
- - gecko_taskgraph.transforms.job:transforms
- - gecko_taskgraph.transforms.task:transforms
-
-jobs:
- check:
- description: Extracts statistics on remaining JSMs in the codebase
- run-on-projects: []
- attributes:
- cron: true
- index:
- product: firefox
- job-name: are-we-esmified-yet
- treeherder:
- platform: lint/opt
- kind: other
- symbol: js(esm)
- tier: 2
- worker-type: t-linux-xlarge-source
- worker:
- docker-image: {in-tree: "lint"}
- max-run-time: 3600
- artifacts:
- - type: file
- name: public/are-we-esmified-yet.json
- path: /builds/worker/artifacts/are-we-esmified-yet.json
- run:
- using: run-task
- command: >-
- mkdir -p /builds/worker/artifacts &&
- cd ${GECKO_PATH} &&
- python3 ./taskcluster/scripts/misc/are-we-esmified-yet.py > /builds/worker/artifacts/are-we-esmified-yet.json
diff --git a/taskcluster/ci/artifact-build/kind.yml b/taskcluster/ci/artifact-build/kind.yml
index 76eb0003a4..d91249fce9 100644
--- a/taskcluster/ci/artifact-build/kind.yml
+++ b/taskcluster/ci/artifact-build/kind.yml
@@ -39,7 +39,7 @@ job-defaults:
secrets: true
tooltool-downloads: public
keep-artifacts: false
- use-system-python: false
+ use-python: default
jobs:
linux64-artifact/opt:
diff --git a/taskcluster/ci/attribution-l10n/kind.yml b/taskcluster/ci/attribution-l10n/kind.yml
index 7042411fa2..48774cb1f6 100644
--- a/taskcluster/ci/attribution-l10n/kind.yml
+++ b/taskcluster/ci/attribution-l10n/kind.yml
@@ -99,7 +99,7 @@ job-defaults:
- /builds/worker/artifacts/target.dmg
- __MOZCUSTOM__
- __MOZCUSTOM__dlsource%3D{attribution_code[json][dlsource]}
- use-system-python: false
+ use-python: default
jobs:
win32-devedition/opt:
diff --git a/taskcluster/ci/attribution/kind.yml b/taskcluster/ci/attribution/kind.yml
index 6a13ee5096..9fac5ac71d 100644
--- a/taskcluster/ci/attribution/kind.yml
+++ b/taskcluster/ci/attribution/kind.yml
@@ -84,7 +84,7 @@ job-defaults:
- /builds/worker/artifacts/target.dmg
- __MOZCUSTOM__
- __MOZCUSTOM__dlsource%3D{attribution_code[json][dlsource]}
- use-system-python: false
+ use-python: default
jobs:
win32-devedition/opt:
diff --git a/taskcluster/ci/beetmover-android-app/kind.yml b/taskcluster/ci/beetmover-android-app/kind.yml
new file mode 100644
index 0000000000..59ef9cb149
--- /dev/null
+++ b/taskcluster/ci/beetmover-android-app/kind.yml
@@ -0,0 +1,47 @@
+# This source code form is subject to the terms of the mozilla public
+# license, v. 2.0. if a copy of the mpl was not distributed with this
+# file, you can obtain one at http://mozilla.org/mpl/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - taskgraph.transforms.from_deps
+ - android_taskgraph.transforms.upstream_artifacts
+ - android_taskgraph.transforms.treeherder
+ - android_taskgraph.transforms.beetmover_android_app
+ - gecko_taskgraph.transforms.task
+
+kind-dependencies:
+ - signing-apk
+ - signing-bundle
+
+jobs:
+ beetmover:
+ from-deps:
+ with-attributes:
+ build-type:
+ - fenix-release
+ - fenix-beta
+ - fenix-nightly
+ - focus-release
+ - klar-release
+ - focus-beta
+ - focus-nightly
+ group-by:
+ attribute: build-type
+ copy-attributes: true
+ attributes:
+ artifact_map: taskcluster/android_taskgraph/manifests/apk_releases.yml
+ shipping_phase: ship
+ treeherder:
+ symbol:
+ by-build-type:
+ klar.*: BM-klar
+ default: BM
+ bucket-scope:
+ by-level:
+ '3':
+ by-build-type:
+ .*-nightly: "project:releng:beetmover:bucket:nightly"
+ .*-(release|beta): "project:releng:beetmover:bucket:release"
+ default: "project:releng:beetmover:bucket:dep"
diff --git a/taskcluster/ci/beetmover-components/kind.yml b/taskcluster/ci/beetmover-components/kind.yml
new file mode 100644
index 0000000000..3b3fd5c8ea
--- /dev/null
+++ b/taskcluster/ci/beetmover-components/kind.yml
@@ -0,0 +1,62 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - taskgraph.transforms.from_deps
+ - android_taskgraph.transforms.upstream_artifacts
+ - android_taskgraph.transforms.beetmover
+ - android_taskgraph.transforms.treeherder
+ - gecko_taskgraph.transforms.task:transforms
+
+kind-dependencies:
+ - signing
+ - build-components
+ - post-signing
+
+jobs:
+ push-to-maven:
+ description: Publish component
+ from-deps:
+ with-attributes:
+ build-type:
+ - release
+ - beta
+ - nightly
+ group-by: component
+ copy-attributes: true
+ maven-destination: 'maven2/org/mozilla/components/{component}/{version}/{artifact_file_name}'
+ shipping-phase: ship
+ treeherder:
+ symbol:
+ by-build-type:
+ release: BM-R
+ beta: BM-B
+ nightly: BM-N
+ default: BM-B
+ kind: build
+ worker:
+ action: push-to-maven
+ bucket:
+ by-build-type:
+ release:
+ by-level:
+ '3': maven-production
+ default: maven-staging
+ beta:
+ by-level:
+ '3': maven-production
+ default: maven-staging
+ nightly:
+ by-level:
+ '3': maven-nightly-production
+ default: maven-nightly-staging
+ beetmover-application-name:
+ by-build-type:
+ release: components
+ beta: components
+ nightly: nightly_components
+ default: UNDEFINED
+ worker-type: beetmover-android
diff --git a/taskcluster/ci/beetmover-geckoview/kind.yml b/taskcluster/ci/beetmover-geckoview/kind.yml
index e608ded508..d37316c5da 100644
--- a/taskcluster/ci/beetmover-geckoview/kind.yml
+++ b/taskcluster/ci/beetmover-geckoview/kind.yml
@@ -20,7 +20,7 @@ only-for-attributes:
not-for-build-platforms:
- linux-shippable/opt
- linux64-shippable/opt
- - linux-aarch64-shippable/opt
+ - linux64-aarch64-shippable/opt
- linux64-nightlyasrelease/opt
- macosx64-shippable/opt
- macosx64-nightlyasrelease/opt
@@ -54,8 +54,8 @@ jobs:
by-project:
# Beetmoving geckoview makes it available to the official maven repo.
# That happens:
- # 1. as part of the ship-geckoview graph on mozilla-central
- # 2. as part of Firefox promote graphs on both mozilla-beta and mozilla-release
+ # 1. as part of the nightly-android or nightly-all graph on mozilla-central
+ # 2. as part of firefox-android ship graphs on both mozilla-beta and mozilla-release
# 3. at every patch uplifted on the GECKOVIEW_XX_RELBRANCH on mozilla-release
# Reminder: There is no Android/geckoview build on ESR.
#
diff --git a/taskcluster/ci/build-apk/kind.yml b/taskcluster/ci/build-apk/kind.yml
new file mode 100644
index 0000000000..99132d17f8
--- /dev/null
+++ b/taskcluster/ci/build-apk/kind.yml
@@ -0,0 +1,518 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - android_taskgraph.transforms.build_android_app:transforms
+ - gecko_taskgraph.transforms.build_schedules:transforms
+ - gecko_taskgraph.transforms.job:transforms
+ - gecko_taskgraph.transforms.task:transforms
+
+kind-dependencies:
+ - toolchain
+ - build-fat-aar
+
+job-defaults:
+ apk-artifact-template:
+ type: file
+ name: 'public/build/target.{abi}.apk'
+ path: '/builds/worker/checkouts/gecko/mobile/android/{source_project_name}/app/build/outputs/apk/{gradle_build}/{gradle_build_type}/{fileName}'
+
+
+jobs:
+ focus-debug:
+ attributes:
+ shipping-product: focus
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ description: 'Focus debug build from source code'
+ run:
+ gradle-build-type: debug
+ gradle-build-name: focusDebug
+ gradle-build: focus
+ source-project-name: "focus-android"
+ treeherder:
+ symbol: focus-debug(Bf)
+ platform: focus-android-all/opt
+
+ klar-debug:
+ attributes:
+ shipping-product: focus
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ description: 'Klar debug build from source code'
+ run:
+ gradle-build-type: debug
+ gradle-build-name: klarDebug
+ gradle-build: klar
+ source-project-name: "focus-android"
+ treeherder:
+ symbol: focus-debug(Bkl)
+ platform: focus-android-all/opt
+
+ fenix-debug:
+ attributes:
+ shipping-product: fenix
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ description: 'Fenix debug build from source code'
+ run:
+ gradle-build-type: debug
+ gradle-build-name: fenixDebug
+ gradle-build: fenix
+ gradle-extra-options:
+ - -PdisableLeakCanary
+ track-apk-size: true
+ source-project-name: "fenix"
+ treeherder:
+ symbol: fenix-debug(Bf)
+ platform: fenix-android-all/opt
+
+ focus-release:
+ description: 'Release Focus build'
+ attributes:
+ release-type: release
+ shipping-product: focus
+ shipping-product: firefox-android
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ include-shippable-secrets: true
+ include-release-version: true
+ run:
+ gradle-build-type: release
+ gradle-build-name: focusRelease
+ gradle-build: focus
+ run-on-projects: []
+ shipping-phase: promote
+ source-project-name: "focus-android"
+ treeherder:
+ symbol: focus-release(Bf)
+ platform: focus-android-all/opt
+
+ klar-release:
+ description: 'Release Klar build'
+ attributes:
+ release-type: release
+ shipping-product: focus
+ shipping-product: firefox-android
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ include-shippable-secrets: true
+ include-release-version: true
+ run:
+ gradle-build-type: release
+ gradle-build-name: klarRelease
+ gradle-build: klar
+ run-on-projects: []
+ shipping-phase: promote
+ source-project-name: "focus-android"
+ treeherder:
+ symbol: focus-release(Bkl)
+ platform: focus-android-all/opt
+
+ fenix-release:
+ description: 'Release Fenix build'
+ attributes:
+ release-type: release
+ shipping-product: fenix
+ shipping-product: firefox-android
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ include-shippable-secrets: true
+ include-release-version: true
+ run:
+ gradle-build-type: release
+ gradle-build-name: fenixRelease
+ gradle-build: fenix
+ track-apk-size: true
+ run-on-projects: []
+ shipping-phase: promote
+ source-project-name: "fenix"
+ treeherder:
+ symbol: fenix-release(Bf)
+ platform: fenix-android-all/opt
+
+ focus-nightly:
+ description: 'Nightly focus build'
+ attributes:
+ # any tasks that have this as a primary dependency will
+ # inherit this attribute via the multi_dep loader
+ shipping-product: focus
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ include-shippable-secrets: true
+ include-nightly-version: true
+ run:
+ gradle-build-type: nightly
+ gradle-build-name: focusNightly
+ gradle-build: focus
+ run-on-projects: []
+ source-project-name: "focus-android"
+ treeherder:
+ symbol: focus-nightly(B)
+ platform: focus-android-all/opt
+
+ fenix-nightly:
+ description: 'Nightly fenix build'
+ attributes:
+ # any tasks that have this as a primary dependency will
+ # inherit this attribute via the multi_dep loader
+ shipping-product: fenix
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ include-shippable-secrets: true
+ include-nightly-version: true
+ source-project-name: "fenix"
+ run:
+ gradle-build-type: nightly
+ gradle-build-name: fenixNightly
+ gradle-build: fenix
+ track-apk-size: true
+ run-on-projects: []
+ treeherder:
+ symbol: fenix-nightly(B)
+ platform: fenix-android-all/opt
+
+ focus-beta:
+ description: 'Beta focus build'
+ attributes:
+ release-type: beta
+ shipping-product: focus
+ shipping-product: firefox-android
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ include-shippable-secrets: true
+ include-release-version: true
+ run:
+ gradle-build-type: beta
+ gradle-build-name: focusBeta
+ gradle-build: focus
+ run-on-projects: []
+ shipping-phase: promote
+ source-project-name: "focus-android"
+ treeherder:
+ symbol: focus-beta(B)
+ platform: focus-android-all/opt
+
+ fenix-beta:
+ description: 'Beta fenix build'
+ attributes:
+ release-type: beta
+ shipping-product: fenix
+ shipping-product: firefox-android
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ include-shippable-secrets: true
+ include-release-version: true
+ run:
+ gradle-build-type: beta
+ gradle-build-name: fenixBeta
+ gradle-build: fenix
+ track-apk-size: true
+ run-on-projects: []
+ shipping-phase: promote
+ source-project-name: "fenix"
+ treeherder:
+ symbol: fenix-beta(B)
+ platform: fenix-android-all/opt
+
+ focus-nightly-firebase:
+ attributes:
+ shipping-product: focus
+ description: 'Focus Nightly build for UI tests'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ disable-optimization: true
+ run:
+ gradle-build-type: nightly
+ gradle-build-name: focusNightly
+ gradle-build: focus
+ test-build-type: nightly
+ run-on-projects: [trunk]
+ source-project-name: "focus-android"
+ treeherder:
+ symbol: focus-nightly(Bf)
+ platform: focus-android-all/opt
+
+ fenix-nightly-firebase:
+ attributes:
+ shipping-product: fenix
+ description: 'Fenix Nightly build for UI tests'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ disable-optimization: true
+ run:
+ gradle-build-type: nightly
+ gradle-build-name: fenixNightly
+ gradle-build: fenix
+ test-build-type: nightly
+ run-on-projects: [trunk]
+ source-project-name: "fenix"
+ treeherder:
+ symbol: fenix-nightly(Bf)
+ platform: fenix-android-all/opt
+
+ focus-beta-firebase:
+ attributes:
+ shipping-product: focus
+ description: 'Focus Beta build for UI tests'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ disable-optimization: true
+ run:
+ gradle-build-type: beta
+ gradle-build-name: focusBeta
+ gradle-build: focus
+ test-build-type: beta
+ run-on-projects: ['release']
+ source-project-name: "focus-android"
+ treeherder:
+ symbol: focus-beta(Bf)
+ platform: focus-android-all/opt
+
+ fenix-beta-firebase:
+ attributes:
+ shipping-product: fenix
+ description: 'Fenix Beta build for UI tests'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ disable-optimization: true
+ run:
+ gradle-build-type: beta
+ gradle-build-name: fenixBeta
+ gradle-build: fenix
+ test-build-type: beta
+ run-on-projects: ['release']
+ source-project-name: "fenix"
+ treeherder:
+ symbol: fenix-beta(Bf)
+ platform: fenix-android-all/opt
+
+ focus-android-test-debug:
+ attributes:
+ shipping-product: focus
+ description: 'Focus Android Test for debugging'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ run:
+ gradle-build-type: androidTest
+ gradle-build-name: androidTest
+ gradle-build: focus
+ source-project-name: "focus-android"
+ apk-artifact-template:
+ # this path is determined by the gradle build configs
+ path: '/builds/worker/checkouts/gecko/mobile/android/focus-android/app/build/outputs/apk/androidTest/focus/debug/app-focus-debug-androidTest.apk'
+ treeherder:
+ symbol: focus-debug(Bat)
+ platform: focus-android-all/opt
+
+ fenix-android-test-debug:
+ attributes:
+ shipping-product: fenix
+ description: 'Fenix Debug Android Test for debugging'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ run:
+ gradle-build-type: androidTest
+ gradle-build-name: androidTest
+ gradle-build: fenix
+ source-project-name: "fenix"
+ apk-artifact-template:
+ # 3 differences here:
+ # * "androidTest/" is added
+ # * "{gradle_build_type}" is forced to "debug"
+ # * "{fileName}" is forced to "app-fenix-debug-androidTest.apk"
+ path: '/builds/worker/checkouts/gecko/mobile/android/fenix/app/build/outputs/apk/androidTest/fenix/debug/app-fenix-debug-androidTest.apk'
+ treeherder:
+ symbol: fenix-debug(Bat)
+ platform: fenix-android-all/opt
+
+ # android-test-nightly and android-test-beta, while still being debug builds, are meant to be signed
+ # with the nightly/beta key. The Firebase testing infrastructure requires both the androidTest APK
+ # and the APK under test to be signed with the same key. Thus, the nightly APK being signed with
+ # nightly means we need an androidTest APK with the same signature.
+
+ focus-android-test-nightly:
+ attributes:
+ shipping-product: focus
+ description: 'Focus Nightly Android Test for debugging'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ run:
+ gradle-build-type: androidTest
+ gradle-build-name: androidTest
+ gradle-build: focus
+ test-build-type: nightly
+ run-on-projects: [trunk]
+ source-project-name: "focus-android"
+ apk-artifact-template:
+ path: '/builds/worker/checkouts/gecko/mobile/android/focus-android/app/build/outputs/apk/androidTest/focus/nightly/app-focus-nightly-androidTest.apk'
+ treeherder:
+ symbol: focus-nightly(Bat)
+ platform: focus-android-all/opt
+
+ # android-test-nightly and android-test-beta, while still being debug builds, are meant to be signed
+ # with the nightly/beta key. The Firebase testing infrastructure requires both the androidTest APK
+ # and the APK under test to be signed with the same key. Thus, the nightly APK being signed with
+ # nightly means we need an androidTest APK with the same signature.
+ #
+ # TODO: See if we can tweak the signing kind to make 2 signing jobs out of a single `android-test`
+ # job.
+ fenix-android-test-nightly:
+ attributes:
+ nightly: true
+ shipping-product: fenix
+ description: 'Fenix Nightly Android Test for debugging'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ apk-artifact-template:
+ # 3 differences here:
+ # * "androidTest/" is added
+ # * "{gradle_build_type}" is forced to "debug"
+ # * "{fileName}" is forced to "app-fenix-nightly-androidTest.apk"
+ path: '/builds/worker/checkouts/gecko/mobile/android/fenix/app/build/outputs/apk/androidTest/fenix/nightly/app-fenix-nightly-androidTest.apk'
+ disable-optimization: true
+ run:
+ gradle-build-type: androidTest
+ gradle-build-name: androidTest
+ gradle-build: fenix
+ test-build-type: nightly
+ run-on-projects: [trunk]
+ source-project-name: "fenix"
+ treeherder:
+ symbol: fenix-nightly(Bat)
+ platform: fenix-android-all/opt
+
+ focus-android-test-beta:
+ attributes:
+ shipping-product: focus
+ description: 'Focus Beta Android Test for debugging'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ run:
+ gradle-build-type: androidTest
+ gradle-build-name: androidTest
+ gradle-build: focus
+ test-build-type: beta
+ run-on-projects: ['release']
+ source-project-name: "focus-android"
+ apk-artifact-template:
+ path: '/builds/worker/checkouts/gecko/mobile/android/focus-android/app/build/outputs/apk/androidTest/focus/beta/app-focus-beta-androidTest.apk'
+ treeherder:
+ symbol: focus-beta(Bat)
+ platform: focus-android-all/opt
+
+ fenix-android-test-beta:
+ attributes:
+ shipping-product: fenix
+ description: 'Fenix Beta Android Test for debugging'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ apk-artifact-template:
+ # 3 differences here:
+ # * "androidTest/" is added
+ # * "{gradle_build_type}" is forced to "beta"
+ # * "{fileName}" is forced to "app-fenix-beta-androidTest.apk"
+ path: '/builds/worker/checkouts/gecko/mobile/android/fenix/app/build/outputs/apk/androidTest/fenix/beta/app-fenix-beta-androidTest.apk'
+ disable-optimization: true
+ run:
+ gradle-build-type: androidTest
+ gradle-build-name: androidTest
+ gradle-build: fenix
+ test-build-type: beta
+ run-on-projects: ['release']
+ source-project-name: "fenix"
+ treeherder:
+ symbol: fenix-beta(Bat)
+ platform: fenix-android-all/opt
+
+ fenix-android-test-mozillaonline:
+ attributes:
+ shipping-product: fenix
+ description: 'Fenix Android Test mozillaonline'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ apk-artifact-template:
+ # 3 differences here:
+ # * "androidTest/" is added
+ # * "{gradle_build_type}" is forced to "beta"
+ # * "{fileName}" is forced to "app-fenix-beta-androidTest.apk"
+ path: '/builds/worker/checkouts/gecko/mobile/android/fenix/app/build/outputs/apk/androidTest/fenix/beta/app-fenix-beta-androidTest.apk'
+ run-on-projects: []
+ disable-optimization: true
+ run:
+ gradle-build-type: androidTest
+ gradle-build-name: androidTest
+ gradle-build: fenix
+ gradle-extra-options:
+ - -PmozillaOnline
+ test-build-type: beta
+ source-project-name: "fenix"
+ treeherder:
+ symbol: fenix-beta(Bat-mo)
+ platform: fenix-android-all/opt
+
+ fenix-nightly-simulation:
+ description: 'Fenix Nightly Simulation'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ attributes:
+ nightly: false
+ shipping-product: fenix
+ include-nightly-version: true
+ include-shippable-secrets: true
+ run-on-projects: []
+ run:
+ gradle-build-type: nightly
+ gradle-build-name: fenixNightly
+ gradle-build: fenix
+ source-project-name: "fenix"
+ treeherder:
+ symbol: fenix-nightlySim(B)
+ platform: fenix-android-all/opt
+
+ fenix-beta-mozillaonline:
+ description: 'Fenix Beta mozillaonline'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ attributes:
+ release-type: beta
+ shipping_phase: promote
+ shipping-product: fenix
+ include-release-version: true
+ include-shippable-secrets: true
+ run:
+ gradle-build-type: beta
+ gradle-build-name: fenixBeta
+ gradle-build: fenix
+ gradle-extra-options:
+ - -PmozillaOnline
+ run-on-projects: []
+ source-project-name: "fenix"
+ treeherder:
+ symbol: fenix-beta(Bmo)
+ platform: fenix-android-all/opt
+
+ fenix-release-mozillaonline:
+ description: 'Fenix Release mozillaonline'
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ attributes:
+ release-type: release
+ shipping_phase: promote
+ shipping-product: fenix
+ include-release-version: true
+ include-shippable-secrets: true
+ run:
+ gradle-build-type: release
+ gradle-build-name: fenixRelease
+ gradle-build: fenix
+ gradle-extra-options:
+ - -PmozillaOnline
+ run-on-projects: []
+ source-project-name: "fenix"
+ treeherder:
+ symbol: fenix-release(Bmo)
+ platform: fenix-android-all/opt
diff --git a/taskcluster/ci/build-bundle/kind.yml b/taskcluster/ci/build-bundle/kind.yml
new file mode 100644
index 0000000000..081b5aba60
--- /dev/null
+++ b/taskcluster/ci/build-bundle/kind.yml
@@ -0,0 +1,213 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - android_taskgraph.transforms.build_android_app:transforms
+ - gecko_taskgraph.transforms.build_schedules:transforms
+ - gecko_taskgraph.transforms.job:transforms
+ - gecko_taskgraph.transforms.task:transforms
+
+kind-dependencies:
+ - toolchain
+ - build-fat-aar
+
+job-defaults:
+ aab-artifact-template:
+ type: file
+ name: 'public/build/target.aab'
+ path: '/builds/worker/checkouts/gecko/mobile/android/{source_project_name}/app/build/outputs/bundle/{variant_name}/app-{gradle_build}-{gradle_build_type}.aab'
+ run:
+ gradle-package-command: bundle
+ gradle-extra-options:
+ - -Paab
+
+
+jobs:
+ focus-debug:
+ attributes:
+ shipping-product: focus
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ description: 'Focus debug AAB build from source code'
+ run:
+ gradle-build-type: debug
+ gradle-build-name: focusDebug
+ gradle-build: focus
+ source-project-name: "focus-android"
+ treeherder:
+ platform: focus-android-all/opt
+ symbol: focus-debug(AABf)
+
+ klar-debug:
+ attributes:
+ shipping-product: focus
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ description: 'Klar debug AAB build from source code'
+ run:
+ gradle-build-type: debug
+ gradle-build-name: klarDebug
+ gradle-build: klar
+ source-project-name: "focus-android"
+ treeherder:
+ platform: focus-android-all/opt
+ symbol: focus-debug(AABkl)
+
+ fenix-debug:
+ attributes:
+ shipping-product: fenix
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ description: 'Fenix debug AAB build from source code'
+ run:
+ gradle-build-type: debug
+ gradle-build-name: fenixDebug
+ gradle-build: fenix
+ source-project-name: "fenix"
+ treeherder:
+ platform: fenix-android-all/opt
+ symbol: fenix-debug(AAB)
+
+ focus-release:
+ attributes:
+ release-type: release
+ shipping-product: focus
+ shipping-product: firefox-android
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ description: 'Focus release AAB build from source code'
+ include-shippable-secrets: true
+ include-release-version: true
+ run-on-projects: ["mozilla-release"]
+ run:
+ gradle-build-type: release
+ gradle-build-name: focusRelease
+ gradle-build: focus
+ shipping-phase: promote
+ source-project-name: "focus-android"
+ treeherder:
+ platform: focus-android-all/opt
+ symbol: focus-release(AABf)
+
+ klar-release:
+ attributes:
+ release-type: release
+ shipping-product: focus
+ shipping-product: firefox-android
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ description: 'Klar release AAB build from source code'
+ include-shippable-secrets: true
+ include-release-version: true
+ run-on-projects: ["mozilla-release"]
+ run:
+ gradle-build-type: release
+ gradle-build-name: klarRelease
+ gradle-build: klar
+ shipping-phase: promote
+ source-project-name: "focus-android"
+ treeherder:
+ platform: focus-android-all/opt
+ symbol: focus-release(AABkl)
+
+ fenix-release:
+ attributes:
+ release-type: release
+ shipping-product: fenix
+ shipping-product: firefox-android
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ description: 'Fenix release AAB build from source code'
+ include-shippable-secrets: true
+ include-release-version: true
+ run-on-projects: ["mozilla-release"]
+ run:
+ gradle-build-type: release
+ gradle-build-name: fenixRelease
+ gradle-build: fenix
+ shipping-phase: promote
+ source-project-name: "fenix"
+ treeherder:
+ platform: fenix-android-all/opt
+ symbol: fenix-release(AAB)
+
+ focus-nightly:
+ attributes:
+ shipping-product: focus
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ description: 'Focus nightly AAB build from source code'
+ include-shippable-secrets: true
+ include-nightly-version: true
+ run-on-projects: ["mozilla-central"]
+ run:
+ gradle-build-type: nightly
+ gradle-build-name: focusNightly
+ gradle-build: focus
+ source-project-name: "focus-android"
+ treeherder:
+ platform: focus-android-all/opt
+ symbol: focus-nightly(AABf)
+
+ fenix-nightly:
+ attributes:
+ shipping-product: fenix
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ description: 'Fenix nightly AAB build from source code'
+ include-shippable-secrets: true
+ include-nightly-version: true
+ run-on-projects: ["mozilla-central"]
+ run:
+ gradle-build-type: nightly
+ gradle-build-name: fenixNightly
+ gradle-build: fenix
+ source-project-name: "fenix"
+ treeherder:
+ platform: fenix-android-all/opt
+ symbol: fenix-nightly(AAB)
+
+ focus-beta:
+ attributes:
+ release-type: beta
+ shipping-product: focus
+ shipping-product: firefox-android
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ description: 'Focus beta AAB build from source code'
+ include-shippable-secrets: true
+ include-release-version: true
+ run-on-projects: ["mozilla-beta"]
+ run:
+ gradle-build-type: beta
+ gradle-build-name: focusBeta
+ gradle-build: focus
+ shipping-phase: promote
+ source-project-name: "focus-android"
+ treeherder:
+ platform: focus-android-all/opt
+ symbol: focus-beta(AABf)
+
+ fenix-beta:
+ attributes:
+ release-type: beta
+ shipping-product: fenix
+ shipping-product: firefox-android
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ description: 'Fenix beta AAB build from source code'
+ include-shippable-secrets: true
+ include-release-version: true
+ run-on-projects: ["mozilla-beta"]
+ run:
+ gradle-build-type: beta
+ gradle-build-name: fenixBeta
+ gradle-build: fenix
+ shipping-phase: promote
+ source-project-name: "fenix"
+ treeherder:
+ platform: fenix-android-all/opt
+ symbol: fenix-beta(AAB)
diff --git a/taskcluster/ci/build-components/kind.yml b/taskcluster/ci/build-components/kind.yml
new file mode 100644
index 0000000000..4d9ae555fa
--- /dev/null
+++ b/taskcluster/ci/build-components/kind.yml
@@ -0,0 +1,134 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: android_taskgraph.loader.build_config:components_loader
+
+transforms:
+ - android_taskgraph.transforms.build_components:transforms
+ - gecko_taskgraph.transforms.build_schedules:transforms
+ - gecko_taskgraph.transforms.job:transforms
+ - gecko_taskgraph.transforms.task:transforms
+
+not-for-components:
+ - samples-browser # Their configs are too different, so they're handled in a specific kind
+
+kind-dependencies:
+ - toolchain
+ - build-fat-aar
+
+job-defaults:
+ artifact-template:
+ type: file
+ name: public/build/{artifact_file_name}
+ path: '/builds/worker/checkouts/gecko/mobile/android/android-components/{component_path}/build/maven/org/mozilla/components/{component}/{version}/{artifact_file_name}'
+ tests-artifact-template:
+ type: directory
+ name: public/reports/tests
+ path: '/builds/worker/checkouts/gecko/mobile/android/android-components/{component_path}/build/reports/tests'
+ lint-artifact-template:
+ type: file
+ name: public/reports/lint-results-release.html
+ path: '/builds/worker/checkouts/gecko/mobile/android/android-components/{component_path}/build/reports/lint-results-release.html'
+ jacoco-coverage-template:
+ type: directory
+ name: public/reports/jacoco
+ path: '/builds/worker/checkouts/gecko/mobile/android/android-components/{component_path}/build/reports/jacoco'
+ description: Execute Gradle tasks for component "{component}"
+ fetches:
+ toolchain:
+ - android-sdk-linux
+ - android-gradle-dependencies
+ - android-gradle-python-envs
+ - linux64-jdk
+ build-fat-aar:
+ - target.maven.tar.xz
+ dependencies:
+ build-fat-aar:
+ by-build-type:
+ release|nightly|beta: build-fat-aar-android-geckoview-fat-aar-shippable/opt
+ default: build-fat-aar-android-geckoview-fat-aar/opt
+ include-coverage:
+ by-build-type:
+ release: false
+ beta: false
+ nightly: false
+ default: true
+ run:
+ gradlew:
+ by-build-type:
+ release:
+ - ':{component}:assembleRelease'
+ - ':{component}:testRelease'
+ - ':{component}:lintRelease'
+ - ':{component}:publish'
+ beta:
+ # /!\ Beta builds are considered Release in gradle
+ - ':{component}:assembleRelease'
+ - ':{component}:testRelease'
+ - ':{component}:lintRelease'
+ - ':{component}:publish'
+ nightly:
+ - '-PnightlyVersion={nightlyVersion}'
+ - ':{component}:assembleRelease'
+ - ':{component}:testRelease'
+ - ':{component}:lintRelease'
+ - ':{component}:publish'
+ default:
+ by-component:
+ # No lintRelease on this task, gradle task isn't defined
+ tooling-lint:
+ - ':{component}:assemble'
+ - ':{component}:assembleAndroidTest'
+ - ':{component}:test'
+ - ':{component}:lint'
+ # No testRelease on this task, gradle task isn't defined
+ tooling-detekt:
+ - ':{component}:assemble'
+ - ':{component}:assembleAndroidTest'
+ - ':{component}:test'
+ - ':{component}:lintRelease'
+ # No publish on these tasks
+ tooling-fetch-tests|samples-.*:
+ - ':{component}:assemble'
+ - ':{component}:assembleAndroidTest'
+ - ':{component}:testRelease'
+ - ':{component}:lintRelease'
+ default:
+ - ':{component}:assemble'
+ - ':{component}:assembleAndroidTest'
+ - ':{component}:testRelease'
+ - ':{component}:lintRelease'
+ - ':{component}:publish'
+ pre-gradlew:
+ - ["cd", "mobile/android/android-components"]
+ using: gradlew
+ use-caches: false
+ run-on-projects:
+ by-build-type:
+ release: []
+ beta: []
+ nightly: []
+ default: [all]
+ shipping-phase:
+ by-build-type:
+ (nightly|beta|release): promote
+ default: null
+ shipping-product: firefox-android
+ treeherder:
+ kind: build
+ symbol:
+ by-build-type:
+ release: '{treeherder_group}(BR)'
+ beta: '{treeherder_group}(BB)'
+ nightly: '{treeherder_group}(BN)'
+ default: '{treeherder_group}(B)'
+ platform: AC-android-all/opt
+ tier: 1
+ worker-type: b-linux-medium-gcp
+ worker:
+ chain-of-trust: true
+ docker-image: {in-tree: android-components}
+ max-run-time: 1200
+ env:
+ ANDROID_SDK_ROOT: /builds/worker/fetches/android-sdk-linux
diff --git a/taskcluster/ci/build-fat-aar/kind.yml b/taskcluster/ci/build-fat-aar/kind.yml
index 3d45e76d79..0d3b1208ec 100644
--- a/taskcluster/ci/build-fat-aar/kind.yml
+++ b/taskcluster/ci/build-fat-aar/kind.yml
@@ -23,7 +23,7 @@ job-defaults:
index:
product: mobile
worker-type: b-linux-gcp
- use-system-python: false
+ use-python: default
worker:
docker-image: {in-tree: android-build}
max-run-time: 7200
@@ -58,6 +58,9 @@ job-defaults:
- name: public/build/geckoview_example.aab
path: /builds/worker/workspace/obj-build/gradle/build/mobile/android/geckoview_example/outputs/bundle/withGeckoBinariesDebug/geckoview_example-withGeckoBinaries-debug.aab
type: file
+ - name: public/build/mozconfig
+ path: /builds/worker/workspace/obj-build/.mozconfig
+ type: file
run:
using: mozharness
script: "mozharness/scripts/fx_desktop_build.py"
@@ -83,6 +86,7 @@ job-defaults:
default: null
fetches:
toolchain:
+ - android-gradle-python-envs
- android-ndk-linux
- android-sdk-linux
- linux64-clang
diff --git a/taskcluster/ci/build-samples-browser/kind.yml b/taskcluster/ci/build-samples-browser/kind.yml
new file mode 100644
index 0000000000..8949d70fad
--- /dev/null
+++ b/taskcluster/ci/build-samples-browser/kind.yml
@@ -0,0 +1,64 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - android_taskgraph.transforms.build_components:transforms
+ - gecko_taskgraph.transforms.build_schedules:transforms
+ - gecko_taskgraph.transforms.job:transforms
+ - gecko_taskgraph.transforms.task:transforms
+
+kind-dependencies:
+ - toolchain
+ - build-fat-aar
+
+
+job-defaults:
+ attributes:
+ build-type: regular
+ component: samples-browser
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ description: Execute Gradle tasks for component "{component}"
+ fetches:
+ toolchain:
+ - android-sdk-linux
+ - android-gradle-dependencies
+ - android-gradle-python-envs
+ - linux64-jdk
+ build-fat-aar:
+ - target.maven.tar.xz
+ include-coverage: true
+ run:
+ pre-gradlew:
+ - ["cd", "mobile/android/android-components"]
+ using: gradlew
+ use-caches: false
+ treeherder:
+ kind: build
+ platform: AC-android-all/opt
+ tier: 1
+ symbol: 'samples-browser(B)'
+ worker-type: b-linux-medium-gcp
+ worker:
+ chain-of-trust: true
+ docker-image: {in-tree: android-components}
+ max-run-time: 1200
+ env:
+ ANDROID_SDK_ROOT: /builds/worker/fetches/android-sdk-linux
+
+jobs:
+ gecko:
+ run:
+ gradlew:
+ - ':samples-browser:assembleGecko'
+ - ':samples-browser:testGeckoDebugUnitTest'
+ - ':samples-browser:lintGeckoDebug'
+
+ system:
+ run:
+ gradlew: [':samples-browser:assembleSystem']
+ treeherder:
+ symbol: 'samples-browser-system(B)'
diff --git a/taskcluster/ci/build/android-asan.yml b/taskcluster/ci/build/android-asan.yml
index 4cc846dece..ac0ff56251 100644
--- a/taskcluster/ci/build/android-asan.yml
+++ b/taskcluster/ci/build/android-asan.yml
@@ -71,5 +71,6 @@ android-x86_64-asan-fuzzing/opt:
- linux64-clang
- linux64-sccache
- android-gradle-dependencies
+ - android-gradle-python-envs
optimization:
skip-unless-expanded: null
diff --git a/taskcluster/ci/build/android-stuff.yml b/taskcluster/ci/build/android-stuff.yml
index 52bed7b18f..cf4c44124d 100644
--- a/taskcluster/ci/build/android-stuff.yml
+++ b/taskcluster/ci/build/android-stuff.yml
@@ -43,6 +43,7 @@ android-geckoview-docs/opt:
fetches:
toolchain:
- android-gradle-dependencies
+ - android-gradle-python-envs
- android-sdk-linux
- linux64-jdk
- linux64-node
diff --git a/taskcluster/ci/build/android.yml b/taskcluster/ci/build/android.yml
index 7c37b2680f..ac3d2a5a31 100644
--- a/taskcluster/ci/build/android.yml
+++ b/taskcluster/ci/build/android.yml
@@ -58,6 +58,7 @@ job-defaults:
- linux64-node
- sysroot-x86_64-linux-gnu
- sysroot-wasm32-wasi
+ - android-gradle-python-envs
android-arm/debug:
description: "Android 5.0 Arm Debug"
diff --git a/taskcluster/ci/build/kind.yml b/taskcluster/ci/build/kind.yml
index b09cbe6926..2e49ca18c5 100644
--- a/taskcluster/ci/build/kind.yml
+++ b/taskcluster/ci/build/kind.yml
@@ -12,8 +12,10 @@ kind-dependencies:
transforms:
- gecko_taskgraph.transforms.build:transforms
- gecko_taskgraph.transforms.build_attrs:transforms
+ - gecko_taskgraph.transforms.build_schedules:transforms
- gecko_taskgraph.transforms.build_lints:transforms
- gecko_taskgraph.transforms.release_notifications:transforms
+ - gecko_taskgraph.transforms.release:run_on_releases
- gecko_taskgraph.transforms.job:transforms
- gecko_taskgraph.transforms.artifact:transforms
- gecko_taskgraph.transforms.task:transforms
@@ -34,7 +36,7 @@ job-defaults:
worker:
env:
MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE: system
- use-system-python: false
+ use-python: default
run:
mozconfig-variant:
by-release-type:
diff --git a/taskcluster/ci/build/linux.yml b/taskcluster/ci/build/linux.yml
index 1e38416e1c..99eae6639e 100644
--- a/taskcluster/ci/build/linux.yml
+++ b/taskcluster/ci/build/linux.yml
@@ -1796,12 +1796,12 @@ linux64-aarch64/opt:
- sysroot-x86_64-linux-gnu
- sysroot-wasm32-wasi
-linux-aarch64-shippable/opt:
+linux64-aarch64-shippable/opt:
description: "Linux AArch64 (a.k.a. ARM64) Shippable"
use-pgo: linux64-shippable/opt
index:
product: firefox
- job-name: linux-aarch64-opt
+ job-name: linux64-aarch64-opt
type: shippable
attributes:
shippable: true
@@ -1810,7 +1810,7 @@ linux-aarch64-shippable/opt:
shipping-phase: build
shipping-product: firefox
treeherder:
- platform: linux-aarch64-shippable/opt
+ platform: linux64-aarch64-shippable/opt
symbol: Bpgo(B)
worker-type: b-linux-xlarge-gcp
worker:
@@ -1835,6 +1835,7 @@ linux-aarch64-shippable/opt:
secrets: true
tooltool-downloads: public
run-on-projects: ['mozilla-central']
+ run-on-releases: ['nightly']
fetches:
toolchain:
- linux64-clang
diff --git a/taskcluster/ci/build/macosx.yml b/taskcluster/ci/build/macosx.yml
index 0b148f01d5..928350e1bf 100644
--- a/taskcluster/ci/build/macosx.yml
+++ b/taskcluster/ci/build/macosx.yml
@@ -313,7 +313,7 @@ macosx64-x64-devedition/opt:
macosx64-aarch64-devedition/opt:
description: "MacOS X Dev Edition Aarch64 (shippable)"
- use-pgo: macosx64-shippable/opt
+ use-pgo: macosx64-aarch64-shippable/opt
attributes:
enable-full-crashsymbols: true
skip-verify-test-packaging: true
diff --git a/taskcluster/ci/build/windows.yml b/taskcluster/ci/build/windows.yml
index cde5e216da..af0bebb4f0 100644
--- a/taskcluster/ci/build/windows.yml
+++ b/taskcluster/ci/build/windows.yml
@@ -558,7 +558,7 @@ win64-shippable/opt:
win64-nightlyasrelease/opt:
description: "Win64 Opt Nightly-As-Release"
- use-pgo: win64-shippable/opt
+ use-pgo: win64-nightlyasrelease/opt
attributes:
enable-full-crashsymbols: true
index:
diff --git a/taskcluster/ci/code-review/kind.yml b/taskcluster/ci/code-review/kind.yml
index b57af6acaf..16586e5a20 100644
--- a/taskcluster/ci/code-review/kind.yml
+++ b/taskcluster/ci/code-review/kind.yml
@@ -14,7 +14,7 @@ kind-dependencies:
- toolchain
job-defaults:
- use-system-python: false
+ use-python: default
jobs:
issues:
diff --git a/taskcluster/ci/condprof/kind.yml b/taskcluster/ci/condprof/kind.yml
index 75afd4a3e2..d1e50620c8 100644
--- a/taskcluster/ci/condprof/kind.yml
+++ b/taskcluster/ci/condprof/kind.yml
@@ -29,7 +29,7 @@ job-defaults:
worker:
taskcluster-proxy: true
max-run-time: 10800
- use-system-python: false
+ use-python: default
jobs:
windows2012-64-firefox:
worker-type: b-win2022
diff --git a/taskcluster/ci/config.yml b/taskcluster/ci/config.yml
index 894ce9399a..a26eb9818d 100644
--- a/taskcluster/ci/config.yml
+++ b/taskcluster/ci/config.yml
@@ -33,12 +33,10 @@ treeherder:
'Btime-Prof-1proc': 'Browsertime performance tests on Firefox with Gecko Profiling and without e10s'
'Btime-live': 'Browsertime performance tests on Firefox'
'Btime-live-fenix': 'Browsertime performance tests on Firefox'
- 'Btime-live-ChR': 'Browsertime performance tests on Firefox'
- 'Btime-live-Cr': 'Browsertime performance tests on Google Chromium'
+ 'Btime-live-ChR': 'Browsertime performance tests on Google Chrome Release'
'Btime-live-Saf': 'Browsertime performance tests on Safari'
'Btime-ChR': 'Browsertime performance tests on Google Chrome Release'
'Btime-nofis-ChR': 'Browsertime performance tests on Google Chrome Release without fission enabled'
- 'Btime-Cr': 'Browsertime performance tests on Google Chromium'
'Btime-P': 'Browsertime power tests on Firefox/Geckoview'
'Btime-P-fenix': 'Browsertime power tests on Fenix'
'Btime-P-refbrow': 'Browsertime power tests on reference browser'
@@ -78,6 +76,8 @@ treeherder:
'M-gli-cf': 'Mochitests confirm failure with WebGL over IPC'
'M-nofis': 'Mochitests without fission enabled'
'M-nofis-cf': 'Mochitests confirm failure without fission enabled'
+ 'M-nofis-ship': "Mochitests without fission and with SHIP (session history in parent) enabled (Android-specific)"
+ 'M-nofis-ship-cf': "Mochitests confirm failure without fission and with SHIP (session history in parent) enabled (Android-specific)"
'M-spi': 'Mochitests with socket process'
'M-spi-cf': 'Mochitests confirm failure with socket process'
'M-spi-nofis': 'Mochitests with socket process without fission enabled'
@@ -104,8 +104,6 @@ treeherder:
'M-f-swr': 'Mochitest failures software webrender'
'M-f-cf': 'Mochitest failures w/confirm failure'
'M-f-swr-cf': 'Mochitest failures software webrender w/confirm failure'
- 'M-dt-no-eft-nofis': 'DevTools Mochitests with EFT disabled without fission enabled'
- 'M-dt-no-eft-nofis-cf': 'DevTools Mochitests confirm failure with EFT disabled without fission enabled'
'M-msix': 'Mochitests from MSIX builds'
'M-msix-cf': 'Mochitests confirm failure from MSIX builds'
'MSI': 'Repack installers into MSIs'
@@ -117,6 +115,8 @@ treeherder:
'R-cf': 'Reftests confirm failure'
'R-nofis': 'Reftests without fission enabled'
'R-nofis-cf': 'Reftests confirm failure without fission enabled'
+ 'R-nofis-ship': 'Reftests without fission and with SHIP (session history in parent) enabled (Android specific)'
+ 'R-nofis-ship-cf': 'Reftests confirm failure without fission and with SHIP (session history in parent) enabled (Android specific)'
'R-swr': 'Reftests with software webrender enabled'
'R-swr-cf': 'Reftests confirm failure with software webrender enabled'
'R-swr-nofis': 'Reftests with software webrender enabled without fission enabled'
@@ -133,7 +133,6 @@ treeherder:
'Rap-live': 'Raptor performance tests on Firefox with live sites'
'Rap-Prof': 'Raptor performance tests on Firefox with Gecko Profiling'
'Rap-ChR': 'Raptor performance tests on Google Chrome Release'
- 'Rap-Cr': 'Raptor performance tests on Google Chromium'
'Rap-refbrow': 'Raptor performance tests on the reference browser'
'T': 'Talos performance tests'
'T-gli': 'Talos performance tests with WebGL over IPC'
@@ -162,6 +161,8 @@ treeherder:
'X-condprof-cf': 'Xpcshell tests confirm failure with a conditioned profile'
'X-nofis': 'Xpcshell tests without fission enabled'
'X-nofis-cf': 'Xpcshell tests confirm failure without fission enabled'
+ 'X-nofis-ship': 'Xpcshell tests without fission and with SHIP (session history in parent) enabled (Android specific)'
+ 'X-nofis-ship-cf': 'Xpcshell tests confirm failure without fission and with SHIP (session history in parent) enabled (Android specific)'
'X-spi-nw': 'Xpcshell tests with networking on socket process'
'X-spi-nw-cf': 'Xpcshell tests confirm failure with networking on socket process'
'X-spi-nw-nofis': 'Xpcshell tests with networking on socket process without fission enabled'
@@ -242,6 +243,161 @@ treeherder:
'wc': 'webcompat'
'Boot': 'Bootstrap'
'Attr-L10n': 'Build Attribution'
+ 'android-l10n': 'Import strings from android-l10n repo'
+
+ # The below symbols are from firefox-android (fenix/focus/android-components)
+ 'buildconfig': 'Make sure the content of .buildconfig.yml matches what gradle knows about its projects'
+ 'compare-locales': 'Validate strings.xml with compare-locales'
+ 'detekt': 'detekt linter'
+ 'ktlint': 'ktlint linter'
+ 'lint': 'gradle lint linter'
+
+ 'focus': 'Focus general tasks no matter the variant'
+ 'focus-beta': 'Focus beta-related tasks'
+ 'focus-debug': 'Focus builds made for testing'
+ 'focus-nightly': 'Focus nightly-related tasks'
+ 'focus-release': 'Focus production-related tasks'
+
+ 'fenix': 'Fenix general tasks no matter the variant'
+ 'fenix-beta': 'Fenix beta-related tasks'
+ 'fenix-debug': 'Fenix builds made for testing'
+ 'fenix-nightly': 'Fenix nightly-related tasks'
+ 'fenix-nightlySim': 'Nightly-related tasks that run on each github push'
+ 'fenix-release': 'Fenix production-related tasks'
+
+ # This list is based on mobile/android/android-components/.buildconfig.yml except the exceptions down below
+ 'browser-domains': 'browser-domains'
+ 'browser-engine-gecko': 'browser-engine-gecko'
+ 'browser-engine-system': 'browser-engine-system'
+ 'browser-errorpages': 'browser-errorpages'
+ 'browser-icons': 'browser-icons'
+ 'browser-menu': 'browser-menu'
+ 'browser-menu2': 'browser-menu2'
+ 'browser-session-storage': 'browser-session-storage'
+ 'browser-state': 'browser-state'
+ 'browser-storage-sync': 'browser-storage-sync'
+ 'browser-tabstray': 'browser-tabstray'
+ 'browser-thumbnails': 'browser-thumbnails'
+ 'browser-toolbar': 'browser-toolbar'
+ 'compose-awesomebar': 'compose-engine'
+ 'compose-browser-toolbar': 'awesomebar-browser-toolbar'
+ 'compose-engine': 'compose-engine'
+ 'compose-tabstray': 'compose-tabstray'
+ 'concept-awesomebar': 'concept-awesomebar'
+ 'concept-base': 'concept-base'
+ 'compose-cfr': 'compose-cfr'
+ 'concept-engine': 'concept-engine'
+ 'concept-fetch': 'concept-fetch'
+ 'concept-menu': 'concept-menu'
+ 'concept-push': 'concept-push'
+ 'concept-storage': 'concept-storage'
+ 'concept-sync': 'concept-sync'
+ 'concept-tabstray': 'concept-tabstray'
+ 'concept-toolbar': 'concept-toolbar'
+ 'feature-accounts-push': 'feature-accounts-push'
+ 'feature-accounts': 'feature-accounts'
+ 'feature-addons': 'feature-addons'
+ 'feature-app-links': 'feature-app-links'
+ 'feature-autofill': 'feature-autofill'
+ 'feature-awesomebar': 'feature-awesomebar'
+ 'feature-containers': 'feature-containers'
+ 'feature-contextmenu': 'feature-contextmenu'
+ 'feature-customtabs': 'feature-customtabs'
+ 'feature-downloads': 'feature-downloads'
+ 'feature-findinpage': 'feature-findinpage'
+ 'feature-fxsuggest': 'feature-fxsuggest'
+ 'feature-intent': 'feature-intent'
+ 'feature-logins': 'feature-logins'
+ 'feature-media': 'feature-media'
+ 'feature-privatemode': 'feature-privatemode'
+ 'feature-prompts': 'feature-prompts'
+ 'feature-push': 'feature-push'
+ 'feature-pwa': 'feature-pwa'
+ 'feature-qr': 'feature-qr'
+ 'feature-readerview': 'feature-readerview'
+ 'feature-recentlyclosed': 'feature-recentlyclosed'
+ 'feature-search': 'feature-search'
+ 'feature-serviceworker': 'feature-serviceworker'
+ 'feature-session': 'feature-session'
+ 'feature-share': 'feature-share'
+ 'feature-sitepermissions': 'feature-sitepermissions'
+ 'feature-syncedtabs': 'feature-syncedtabs'
+ 'feature-tab-collections': 'feature-tab-collections'
+ 'feature-tabs': 'feature-tabs'
+ 'feature-toolbar': 'feature-toolbar'
+ 'feature-top-sites': 'feature-top-sites'
+ 'feature-webauthn': 'feature-webauthn'
+ 'feature-webcompat': 'feature-webcompat'
+ 'feature-webnotifications': 'feature-webnotifications'
+ 'lib-crash': 'lib-crash'
+ 'lib-auth': 'lib-auth'
+ 'lib-crash-sentry': 'lib-crash-sentry'
+ 'lib-crash-sentry-legacy': 'lib-crash-sentry-legacy'
+ 'lib-dataprotect': 'lib-dataprotect'
+ 'lib-fetch-okhttp': 'lib-fetch-okhttp'
+ 'lib-jexl': 'lib-jexl'
+ 'lib-publicsuffixlist': 'lib-publicsuffixlist'
+ 'lib-push-firebase': 'lib-push-firebase'
+ 'lib-state': 'lib-state'
+ 'samples-compose-browser': 'samples-compose-browser'
+ 'samples-crash': 'samples-crash'
+ 'samples-dataprotect': 'samples-dataprotect'
+ 'samples-firefox-accounts': 'samples-firefox-accounts'
+ 'samples-glean-library': 'samples-glean-library'
+ 'samples-glean': 'samples-glean'
+ 'samples-sync-logins': 'samples-sync-logins'
+ 'samples-sync': 'samples-sync'
+ 'samples-toolbar': 'samples-toolbar'
+ 'service-contile': 'service-contile'
+ 'service-digitalassetlinks': 'service-digitalassetlinks'
+ 'service-experiments': 'service-experiments'
+ 'service-firefox-accounts': 'service-firefox-accounts'
+ 'service-fretboard': 'service-fretboard'
+ 'service-glean': 'service-glean'
+ 'service-location': 'service-location'
+ 'service-nimbus': 'service-nimbus'
+ 'service-pocket': 'service-pocket'
+ 'service-sync-autofill': 'service-sync-autofill'
+ 'service-sync-logins': 'service-sync-logins'
+ 'support-android-test': 'support-android-test'
+ 'support-base': 'support-base'
+ 'support-images': 'support-images'
+ 'support-ktx': 'support-ktx'
+ 'support-license': 'support-license'
+ 'support-locale': 'support-locale'
+ 'support-migration': 'support-migration'
+ 'support-remotesettings': 'support-remotesettings'
+ 'support-rusthttp': 'support-rusthttp'
+ 'support-rusterrors': 'support-rusterrors'
+ 'support-rustlog': 'support-rustlog'
+ 'support-sync-telemetry': 'support-sync-telemetry'
+ 'support-test-appservices': 'support-test-appservices'
+ 'support-test-fakes': 'support-test-fakes'
+ 'support-test-libstate': 'support-test-libstate'
+ 'support-test': 'support-test'
+ 'support-utils': 'support-utils'
+ 'support-webextensions': 'support-webextensions'
+ 'tooling-detekt': 'tooling-detekt'
+ 'tooling-fetch-tests': 'tooling-fetch-tests'
+ 'tooling-lint': 'tooling-lint'
+ 'ui-autocomplete': 'ui-autocomplete'
+ 'ui-colors': 'ui-colors'
+ 'ui-fonts': 'ui-fonts'
+ 'ui-icons': 'ui-icons'
+ 'ui-tabcounter': 'ui-tabcounter'
+ 'ui-widgets': 'ui-widgets'
+
+ # These ones are too long to fit in 25 chars
+ 'lib-fetch-httpurlconnecti': 'lib-fetch-httpurlconnection'
+ 'feature-webcompat-reporte': 'feature-webcompat-reporter'
+
+ # Groups aren't generated off buildconfig.yml:
+ 'samples-browser': 'samples-browser'
+ 'samples-browser-gecko': 'samples-browser-gecko'
+ 'samples-browser-system': 'samples-browser-system'
+
+ # forPerformanceTest: Builds made for Raptor and other performance tests
+ 'Rap-P': 'Raptor power tests'
index:
products:
@@ -285,6 +441,7 @@ release-promotion:
- 'devedition'
- 'fennec'
- 'firefox'
+ - 'firefox-android'
rebuild-kinds:
- docker-image
- fetch
@@ -345,6 +502,15 @@ release-promotion:
is-rc: true
target-tasks-method: ship_desktop
partial-updates: true
+ promote_android:
+ product: firefox-android
+ target-tasks-method: promote_android
+ push_android:
+ product: firefox-android
+ target-tasks-method: push_android
+ ship_android:
+ product: firefox-android
+ target-tasks-method: ship_android
merge-automation:
@@ -358,6 +524,8 @@ merge-automation:
new-suffix: ''
- filename: "browser/config/version_display.txt"
new-suffix: 'b1'
+ - filename: "mobile/android/version.txt"
+ new-suffix: 'b1'
replacements:
- - browser/config/mozconfigs/linux32/l10n-mozconfig
- ac_add_options --with-branding=browser/branding/nightly
@@ -399,6 +567,8 @@ merge-automation:
version-files:
- filename: "browser/config/version_display.txt"
new-suffix: ''
+ - filename: "mobile/android/version.txt"
+ new-suffix: ''
replacements: []
merge-old-head: true
base-tag: 'FIREFOX_RELEASE_{major_version}_BASE'
@@ -429,6 +599,9 @@ merge-automation:
- filename: "browser/config/version_display.txt"
version-bump: "major"
new-suffix: 'a1'
+ - filename: "mobile/android/version.txt"
+ version-bump: "major"
+ new-suffix: 'a1'
replacements:
- - "services/sync/modules/constants.sys.mjs"
- 'WEAVE_VERSION = "1.{current_weave_version}.0"'
@@ -511,6 +684,11 @@ taskgraph:
workers:
aliases:
+ b-linux-gcp-aarch64:
+ provisioner: '{trust-domain}-{level}'
+ implementation: generic-worker
+ os: linux
+ worker-type: '{alias}'
b-linux.*:
provisioner: '{trust-domain}-{level}'
implementation: docker-worker
@@ -575,6 +753,14 @@ workers:
by-release-level:
production: '{trust-domain}-3-beetmover'
staging: '{trust-domain}-1-beetmover'
+ beetmover-android:
+ provisioner: scriptworker-k8s
+ implementation: scriptworker-beetmover
+ os: scriptworker
+ worker-type:
+ by-release-level:
+ production: '{trust-domain}-3-beetmover'
+ staging: '{trust-domain}-1-beetmover'
shipit:
provisioner: scriptworker-k8s
implementation: shipit
@@ -609,6 +795,11 @@ workers:
by-release-level:
production: signing-mac-v1
staging: depsigning-mac-v1
+ push-apk:
+ provisioner: scriptworker-k8s
+ implementation: scriptworker-pushapk
+ os: scriptworker
+ worker-type: '{trust-domain}-{level}-pushapk'
tree:
provisioner: scriptworker-k8s
implementation: treescript
@@ -635,11 +826,16 @@ workers:
implementation: docker-worker
os: linux
worker-type: '{alias}-gcp'
+ t-linux(-large|-xlarge|-xlarge-source)-noscratch:
+ provisioner: '{trust-domain}-t'
+ implementation: docker-worker
+ os: linux
+ worker-type: '{alias}-gcp'
t-linux-kvm:
provisioner: '{trust-domain}-t'
implementation: docker-worker
os: linux
- worker-type: 't-linux-kvm-gcp'
+ worker-type: 't-linux-kvm-noscratch-gcp'
t-linux-talos:
provisioner: releng-hardware
implementation: generic-worker
@@ -682,7 +878,7 @@ workers:
default: '{trust-domain}-t'
implementation: docker-worker
os: linux
- worker-type: 't-linux-xlarge-gcp'
+ worker-type: 't-linux-xlarge-noscratch-gcp'
b-osx-1015:
provisioner: releng-hardware
implementation: generic-worker
@@ -704,7 +900,7 @@ workers:
implementation: generic-worker
os: windows
worker-type: '{alias}'
- t-win10-64(-hw|-ref-hw|-1803-hw):
+ t-win10-64(-hw|-1803-hw):
provisioner: releng-hardware
implementation: generic-worker
os: windows
@@ -756,20 +952,11 @@ workers:
worker-type: misc-gcp
-mac-notarization:
- mac-entitlements:
- by-platform:
- macosx64.*:
- by-release-level:
- production: security/mac/hardenedruntime/v1/production/browser.xml
- default: security/mac/hardenedruntime/v1/developer/browser.xml
- default: ''
+mac-signing:
mac-requirements:
by-platform:
macosx64.*: build/package/mac_osx/requirements.plist
default: ''
-
-mac-signing:
hardened-sign-config:
by-hardened-signing-type:
production:
@@ -790,9 +977,10 @@ mac-signing:
- deep: false
runtime: true
force: true
- # These files are signed wihtout entitlements
+ # These files are signed without entitlements
globs:
- "/Contents/MacOS/crashreporter.app"
+ - "/Contents/MacOS/updater.app/Contents/Frameworks/UpdateSettings.framework"
- "/Contents/MacOS/updater.app"
- "/Contents/Library/LaunchServices/org.mozilla.updater"
- "/Contents/MacOS/XUL"
@@ -801,6 +989,7 @@ mac-signing:
- "/Contents/MacOS/nmhproxy"
- "/Contents/MacOS/*.dylib"
- "/Contents/Resources/gmp-clearkey/*/*.dylib"
+ - "/Contents/Frameworks/ChannelPrefs.framework"
- deep: false
runtime: true
@@ -836,11 +1025,13 @@ mac-signing:
entitlements: security/mac/hardenedruntime/v2/developer/utility.xml
globs:
- "/Contents/MacOS/crashreporter.app"
+ - "/Contents/MacOS/updater.app/Contents/Frameworks/UpdateSettings.framework"
- "/Contents/MacOS/updater.app"
- "/Contents/Library/LaunchServices/org.mozilla.updater"
- "/Contents/MacOS/pingsender"
- "/Contents/MacOS/minidump-analyzer"
- "/Contents/MacOS/nmhproxy"
+ - "/Contents/Frameworks/ChannelPrefs.framework"
- deep: false
runtime: true
diff --git a/taskcluster/ci/diffoscope/artifacts.yml b/taskcluster/ci/diffoscope/artifacts.yml
index 0e901f50fd..b06604f3cb 100644
--- a/taskcluster/ci/diffoscope/artifacts.yml
+++ b/taskcluster/ci/diffoscope/artifacts.yml
@@ -18,7 +18,7 @@ job-defaults:
# artifact and not-artifact builds, so remove its line if present.
- sed -i '/telemetry\.fog\.artifact\_build/d' b/"$RESOURCE_DIR"/browser/defaults/preferences/firefox.js
# artifact builds are not fed with accepted-mar-channel-ids
- - sed -i '/ACCEPTED_MAR_CHANNEL_IDS/d' {a,b}/"$RESOURCE_DIR"/update-settings.ini
+ - if [ -f a/"$RESOURCE_DIR"/update-settings.ini ]; then sed -i '/ACCEPTED_MAR_CHANNEL_IDS/d' {a,b}/"$RESOURCE_DIR"/update-settings.ini; fi
# Extra diffoscope arguments to account for:
# - about:buildconfig being expectedly different.
extra-args: >-
diff --git a/taskcluster/ci/docker-image/kind.yml b/taskcluster/ci/docker-image/kind.yml
index 149186fb3b..12dc16cdd1 100644
--- a/taskcluster/ci/docker-image/kind.yml
+++ b/taskcluster/ci/docker-image/kind.yml
@@ -245,3 +245,9 @@ jobs:
args:
SNAP_BASE: core22
SNAP_LIST: "gnome-42-2204 gtk-common-themes gnome-42-2204-sdk"
+ android-components:
+ symbol: I(android-components)
+ parent: debian12-base
+ android-ui-tests:
+ symbol: I(android-ui-tests)
+ parent: android-components
diff --git a/taskcluster/ci/fetch/browsertime.yml b/taskcluster/ci/fetch/browsertime.yml
index 84cb862b7a..730ca3c279 100644
--- a/taskcluster/ci/fetch/browsertime.yml
+++ b/taskcluster/ci/fetch/browsertime.yml
@@ -37,89 +37,6 @@ linux64-chromedriver:
sha256: 461919e080e19335a34224e2d353b96b07c7d068621aa940f9c136e86d090047
size: 5404417
-win32-chromedriver-120:
- description: "Win32 chromedriver v120"
- fetch:
- type: static-url
- artifact-name: chromedriver_win32_120.tar.zst
- add-prefix: "120"
- url: https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/120.0.6099.18/win32/chromedriver-win32.zip
- sha256: f07b320a3e739c619b9bda0c62169d6173350e7415317125fba76c8b002458ce
- size: 7360109
-
-linux64-chromedriver-120:
- description: "Linux64 chromedriver v120"
- fetch:
- type: static-url
- artifact-name: chromedriver_linux64_120.tar.zst
- add-prefix: "120"
- url: https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/120.0.6099.18/linux64/chromedriver-linux64.zip
- sha256: 3990b819b9b8866784dcd634e284e6e02f2b92f81ba89fb7b6c98061ad2b3c6e
- size: 8575905
-
-mac64-chromedriver-120:
- description: "Mac64 chromedriver v120"
- fetch:
- type: static-url
- artifact-name: chromedriver_mac64_120.tar.zst
- add-prefix: "120"
- url: https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/120.0.6099.18/mac-x64/chromedriver-mac-x64.zip
- sha256: f645302e046e4314477b72244335c60098563d202fc0c9467df7d71b850c21f1
- size: 9235668
-
-mac-arm-chromedriver-120:
- description: "Mac64 arm chromedriver v120"
- fetch:
- type: static-url
- artifact-name: chromedriver_mac-arm_120.tar.zst
- add-prefix: "120"
- url: https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/120.0.6099.18/mac-arm64/chromedriver-mac-arm64.zip
- sha256: 141e0abedfe2a1df6c3eb334becdf1993dce8b4fc0f906457606470c6542f236
- size: 8293703
-
-win32-chromedriver-121:
- description: "Win32 chromedriver v121"
- fetch:
- type: static-url
- artifact-name: chromedriver_win32_121.tar.zst
- add-prefix: "121"
- url: https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/121.0.6167.57/win32/chromedriver-win32.zip
- sha256: a6618777d23e2d65a4938c150df1c7516be6d8e52748f635c7bf1df36e0a143f
- size: 7989797
-
-
-linux64-chromedriver-121:
- description: "Linux64 chromedriver v121"
- fetch:
- type: static-url
- artifact-name: chromedriver_linux64_121.tar.zst
- add-prefix: "121"
- url: https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/121.0.6167.57/linux64/chromedriver-linux64.zip
- sha256: f4a3fe88694cd67484041d01dfc33e9769b9709335e97e3283f11da0e95a73f8
- size: 8625832
-
-
-mac64-chromedriver-121:
- description: "Mac64 chromedriver v121"
- fetch:
- type: static-url
- artifact-name: chromedriver_mac64_121.tar.zst
- add-prefix: "121"
- url: https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/121.0.6167.57/mac-x64/chromedriver-mac-x64.zip
- sha256: c89fa84060d18ed03f3f68de67400051691836b85e8b7d77b386d6239f9b8ced
- size: 9233941
-
-
-mac-arm-chromedriver-121:
- description: "Mac-arm chromedriver v121"
- fetch:
- type: static-url
- artifact-name: chromedriver_mac-arm_121.tar.zst
- add-prefix: "121"
- url: https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/121.0.6167.57/mac-arm64/chromedriver-mac-arm64.zip
- sha256: e162f11cebcb7d255daf3f7af2e8f6046389f2b5264c0a991022957af0524afc
- size: 8318525
-
win32-chromedriver-122:
description: "Win32 chromedriver v122"
fetch:
@@ -160,6 +77,96 @@ mac-arm-chromedriver-122:
sha256: 645f277c05d7f7d238c7a45412f42489767f48cba05d8632ce00b54b3704d4e1
size: 8293896
+win32-chromedriver-123:
+ description: "Win32 chromedriver v123"
+ fetch:
+ type: static-url
+ artifact-name: chromedriver_win32_123.tar.zst
+ add-prefix: "123"
+ url: "https://storage.googleapis.com/chrome-for-testing-public/123.0.6312.58/win32/chromedriver-win32.zip"
+ sha256: 5367d72e2a90463bda103450b893ec12a7272dc62094d230a4433c449b96993e
+ size: 8125668
+
+linux64-chromedriver-123:
+ description: "Linux64 chromedriver v123"
+ fetch:
+ type: static-url
+ artifact-name: chromedriver_linux64_123.tar.zst
+ add-prefix: "123"
+ url: "https://storage.googleapis.com/chrome-for-testing-public/123.0.6312.58/linux64/chromedriver-linux64.zip"
+ sha256: accdaeb00d330d9d5a5ef91bbe6fa5d316a5562109231bbc65866fa1390d8a2b
+ size: 8553025
+
+mac64-chromedriver-123:
+ description: "Mac64 chromedriver v123"
+ fetch:
+ type: static-url
+ artifact-name: chromedriver_mac64_123.tar.zst
+ add-prefix: "123"
+ url: "https://storage.googleapis.com/chrome-for-testing-public/123.0.6312.58/mac-x64/chromedriver-mac-x64.zip"
+ sha256: c912db7b7c65d0bfcf7d17150782c0e89783bcba60521b4a66201fc81daffd91
+ size: 9346571
+
+mac-arm-chromedriver-123:
+ description: "Mac64 arm chromedriver v123"
+ fetch:
+ type: static-url
+ artifact-name: chromedriver_mac-arm_123.tar.zst
+ add-prefix: "123"
+ url: "https://storage.googleapis.com/chrome-for-testing-public/123.0.6312.58/mac-arm64/chromedriver-mac-arm64.zip"
+ sha256: 4ccade08517d2e8fbd832ee4cd959df4c8dea740986b70b19f892bf413537641
+ size: 9325268
+
+win32-chromedriver-124:
+ description: "Win32 chromedriver v124"
+ fetch:
+ type: static-url
+ artifact-name: chromedriver_win32_124.tar.zst
+ add-prefix: "124"
+ url: "https://storage.googleapis.com/chrome-for-testing-public/124.0.6367.29/win32/chromedriver-win32.zip"
+ sha256: 5a47fb7ed7094021fd3faa25fcdaf69e893082e3b0f5d31f9d341082eceb80dc
+ size: 8171680
+
+win64-chromedriver-124:
+ description: "Win64 chromedriver v124"
+ fetch:
+ type: static-url
+ artifact-name: chromedriver_win64_124.tar.zst
+ add-prefix: "124"
+ url: "https://storage.googleapis.com/chrome-for-testing-public/124.0.6367.29/win64/chromedriver-win64.zip"
+ sha256: 502eb3a0e1caa3704ea30c41c8d479681a6c05a21a5bf47c405a1eef45def8bc
+ size: 8637191
+
+linux64-chromedriver-124:
+ description: "Linux64 chromedriver v124"
+ fetch:
+ type: static-url
+ artifact-name: chromedriver_linux64_124.tar.zst
+ add-prefix: "124"
+ url: "https://storage.googleapis.com/chrome-for-testing-public/124.0.6367.29/linux64/chromedriver-linux64.zip"
+ sha256: 8071bebf39a9de7ecfcb41e095a9c9f35570556a001a608afaee9e3f1f3cc835
+ size: 8665597
+
+mac64-chromedriver-124:
+ description: "Mac64 chromedriver v124"
+ fetch:
+ type: static-url
+ artifact-name: chromedriver_mac64_124.tar.zst
+ add-prefix: "124"
+ url: "https://storage.googleapis.com/chrome-for-testing-public/124.0.6367.29/mac-x64/chromedriver-mac-x64.zip"
+ sha256: ed07a9495a215ffc747240be99b84841f1d5f6085ec21eccc30b6a665dd669e5
+ size: 10465611
+
+mac-arm-chromedriver-124:
+ description: "Mac64 arm chromedriver v124"
+ fetch:
+ type: static-url
+ artifact-name: chromedriver_mac-arm_124.tar.zst
+ add-prefix: "124"
+ url: "https://storage.googleapis.com/chrome-for-testing-public/124.0.6367.29/mac-arm64/chromedriver-mac-arm64.zip"
+ sha256: 6a5198faac2fa0467a0c23fea51b954d012f7fbf7b83d424fb6baa1e426eaf49
+ size: 9331537
+
upload-speed-test-file:
description: "File used for the upload speed performance test"
fetch:
diff --git a/taskcluster/ci/fetch/toolchains.yml b/taskcluster/ci/fetch/toolchains.yml
index 4ab075aacd..9c58eaddc7 100644
--- a/taskcluster/ci/fetch/toolchains.yml
+++ b/taskcluster/ci/fetch/toolchains.yml
@@ -311,7 +311,7 @@ mingw-w64:
fetch:
type: git
repo: https://git.code.sf.net/p/mingw-w64/mingw-w64
- revision: 95a2cf4b7260200c4a60f4f1d1127e72799a3541
+ revision: cd4cf9b279f8fb0815f8b9665d3cea60a30290bc
mingw-w64-trunk:
description: mingw-w64 master branch source code
@@ -362,11 +362,11 @@ clang-17:
revision: 6009708b4367171ccdbf4b5905cb6a803753fe18
clang-18:
- description: clang 18.1.0-rc2 source code
+ description: clang 18.1.1 source code
fetch:
type: git
repo: https://github.com/llvm/llvm-project
- revision: c6c86965d967886ca5a2ed8968c949cd42cdd49a
+ revision: dba2a75e9c7ef81fe84774ba5eee5e67e01d801a
clang-trunk:
description: clang main branch source code
@@ -380,13 +380,13 @@ clang-trunk:
# We build stable rust from source so the resulting compiler acts as a nightly
# rust compiler, allowing to use unstable features like -Zbuild-std and
# sanitizers.
-rust-1.76.0:
- description: Rust 1.76.0 source code
+rust-1.77.2:
+ description: Rust 1.77.2 source code
fetch:
type: git
include-dot-git: true
repo: https://github.com/rust-lang/rust/
- revision: 07dca489ac2d933c78d3c5158e3f43beefeb02ce
+ revision: 25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04
wasi-sdk-11:
description: wasi-sdk-11 source code
@@ -428,7 +428,7 @@ dump-syms:
fetch:
type: git
repo: https://github.com/mozilla/dump_syms/
- revision: b1951e4ccec48a2e97460a7ec40be35aa79e0037
+ revision: 96c647f0a63912b68b0bc2613cef77d9b3f305fd
rust-minidump:
description: rust-minidump 0.19.1 source code (for minidump-stackwalk)
@@ -668,3 +668,10 @@ libxml2:
artifact-name: libxml2.tar.zst
strip-components: 1
add-prefix: libxml2/
+
+mozilla-pdf.js:
+ description: Mozilla pdf.js Github repo
+ fetch:
+ type: git
+ repo: https://github.com/mozilla/pdf.js
+ revision: d64f334f98d4b7f1c2e09a731a63b68629c946f9
diff --git a/taskcluster/ci/fuzzing/kind.yml b/taskcluster/ci/fuzzing/kind.yml
index 68e212bb9c..444240c619 100644
--- a/taskcluster/ci/fuzzing/kind.yml
+++ b/taskcluster/ci/fuzzing/kind.yml
@@ -20,7 +20,7 @@ job-defaults:
worker:
max-run-time: 3600
docker-image: {in-tree: debian12-amd64-build}
- use-system-python: false
+ use-python: default
treeherder:
kind: test
tier: 3
diff --git a/taskcluster/ci/generate-profile/kind.yml b/taskcluster/ci/generate-profile/kind.yml
index 839c5aa7fe..b71afb23d0 100644
--- a/taskcluster/ci/generate-profile/kind.yml
+++ b/taskcluster/ci/generate-profile/kind.yml
@@ -21,8 +21,7 @@ job-defaults:
symbol: Bpgo(run)
kind: build
tier: 1
- run-on-projects: ['release']
- use-system-python: false
+ use-python: default
jobs:
linux-shippable/opt:
@@ -81,6 +80,7 @@ jobs:
cwd: '{checkout}'
command: >
./taskcluster/scripts/misc/run-profileserver.sh
+ run-on-projects: ['release']
fetches:
toolchain:
- linux64-clang
@@ -118,10 +118,12 @@ jobs:
- android/android_common.py
- android/android-x86_64-profile-generation.py
- android/android_pgo.py
+ run-on-projects: ['release']
fetches:
toolchain:
- linux64-clang
- linux64-minidump-stackwalk
+ - linux64-hostutils
- android-sdk-linux
- android-system-image-x86_64-linux
- android-avd-x86_64-linux
@@ -158,10 +160,12 @@ jobs:
- android/android_common.py
- android/android-x86_64-profile-generation.py
- android/android_pgo.py
+ run-on-projects: ['release']
fetches:
toolchain:
- linux64-clang
- linux64-minidump-stackwalk
+ - linux64-hostutils
- android-sdk-linux
- android-system-image-x86_64-linux
- android-avd-x86_64-linux
@@ -199,10 +203,12 @@ jobs:
- android/android_common.py
- android/android-aarch64-profile-generation.py
- android/android_pgo.py
+ run-on-projects: ['release']
fetches:
toolchain:
- linux64-clang
- linux64-minidump-stackwalk
+ - linux64-hostutils
- android-sdk-linux
- android31-system-image-x86_64-linux
- android31-avd-x86_64-linux
@@ -231,6 +237,7 @@ jobs:
sparse-profile: profile-generate
cwd: '{checkout}'
command: ./taskcluster/scripts/misc/run-profileserver.sh
+ run-on-projects: ['release']
fetches:
toolchain:
- win64-clang-toolchain
@@ -260,6 +267,37 @@ jobs:
sparse-profile: profile-generate
cwd: '{checkout}'
command: ./taskcluster/scripts/misc/run-profileserver.sh
+ run-on-projects: ['release']
+ fetches:
+ toolchain:
+ - win64-clang-toolchain
+ - win32-minidump-stackwalk
+
+ win64-nightlyasrelease/opt:
+ description: "Win64 Nightly-as-release Profile Generation"
+ shipping-phase: build
+ shipping-product: firefox
+ index:
+ product: firefox
+ job-name: win64-nightlyasrelease-profile
+ treeherder:
+ platform: win64-nightlyasrelease/opt
+ worker-type: b-win2022
+ worker:
+ chain-of-trust: true
+ max-run-time: 2400
+ env:
+ UPLOAD_PATH: "artifacts"
+ artifacts:
+ - type: directory
+ name: public/build
+ path: build/src/artifacts/
+ run:
+ using: run-task
+ sparse-profile: profile-generate
+ cwd: '{checkout}'
+ command: ./taskcluster/scripts/misc/run-profileserver.sh
+ run-on-projects: [trunk-only]
fetches:
toolchain:
- win64-clang-toolchain
@@ -289,6 +327,7 @@ jobs:
sparse-profile: profile-generate
cwd: '{checkout}'
command: ./taskcluster/scripts/misc/run-profileserver-macos.sh
+ run-on-projects: ['release']
fetches:
toolchain:
- macosx64-clang
@@ -318,6 +357,7 @@ jobs:
sparse-profile: profile-generate
cwd: '{checkout}'
command: ./taskcluster/scripts/misc/run-profileserver-macos.sh
+ run-on-projects: ['release']
fetches:
toolchain:
- macosx64-clang
diff --git a/taskcluster/ci/hazard/kind.yml b/taskcluster/ci/hazard/kind.yml
index 569141e8c8..8bdc1bbb17 100644
--- a/taskcluster/ci/hazard/kind.yml
+++ b/taskcluster/ci/hazard/kind.yml
@@ -23,7 +23,7 @@ job-defaults:
worker:
max-run-time: 10800
docker-image: {in-tree: debian12-amd64-build}
- use-system-python: false
+ use-python: default
jobs:
linux64-shell-haz/debug:
diff --git a/taskcluster/ci/instrumented-build/kind.yml b/taskcluster/ci/instrumented-build/kind.yml
index 0350bc51af..9823970185 100644
--- a/taskcluster/ci/instrumented-build/kind.yml
+++ b/taskcluster/ci/instrumented-build/kind.yml
@@ -26,7 +26,7 @@ job-defaults:
env:
PERFHERDER_EXTRA_OPTIONS: instrumented
MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE: system
- use-system-python: false
+ use-python: default
run:
using: mozharness
actions: [get-secrets, build]
@@ -39,7 +39,6 @@ job-defaults:
fetches:
toolchain:
- linux64-sccache
- run-on-projects: ['release']
jobs:
linux-shippable/opt:
@@ -87,6 +86,40 @@ jobs:
- builds/releng_base_linux_64_builds.py
mozconfig-variant: profile-generate
tooltool-downloads: public
+ run-on-projects: ['release']
+ fetches:
+ toolchain:
+ - linux64-clang
+ - linux64-rust
+ - linux64-rust-size
+ - linux64-cbindgen
+ - linux64-dump_syms
+ - linux64-nasm
+ - linux64-node
+ - linux64-pkgconf
+ - sysroot-x86_64-linux-gnu
+ - sysroot-wasm32-wasi
+
+ linux64-aarch64-shippable/opt:
+ description: "Linux AArch64 (a.k.a. ARM64) Instrumented"
+ index:
+ product: firefox
+ job-name: instrumented-linux64-aarch64
+ shipping-product: firefox
+ treeherder:
+ platform: linux64-aarch64-shippable/opt
+ worker-type: b-linux-gcp
+ run:
+ config:
+ - builds/releng_base_firefox.py
+ - builds/releng_base_linux_64_builds.py
+ mozconfig-variant: profile-generate
+ extra-config:
+ extra_mozconfig_content:
+ - ac_add_options --target=aarch64
+ - unset MOZ_STDCXX_COMPAT
+ tooltool-downloads: public
+ run-on-projects: ['mozilla-central']
fetches:
toolchain:
- linux64-clang
@@ -97,6 +130,7 @@ jobs:
- linux64-nasm
- linux64-node
- linux64-pkgconf
+ - sysroot-aarch64-linux-gnu
- sysroot-x86_64-linux-gnu
- sysroot-wasm32-wasi
@@ -120,6 +154,7 @@ jobs:
script: "mozharness/scripts/fx_desktop_build.py"
secrets: true
mozconfig-variant: profile-generate
+ run-on-projects: ['release']
fetches:
toolchain:
- linux64-clang
@@ -157,6 +192,7 @@ jobs:
mozconfig-variant: profile-generate
extra-config:
mozconfig_platform: macosx64-aarch64
+ run-on-projects: ['release']
fetches:
toolchain:
- linux64-clang
@@ -210,9 +246,11 @@ jobs:
- builds/releng_base_android_64_builds.py
custom-build-variant-cfg: x86-profile-generate
tooltool-downloads: internal
+ run-on-projects: ['release']
fetches:
toolchain:
- android-gradle-dependencies
+ - android-gradle-python-envs
- android-ndk-linux
- android-sdk-linux
- linux64-jdk
@@ -264,9 +302,11 @@ jobs:
- builds/releng_base_android_64_builds.py
custom-build-variant-cfg: x86_64-profile-generate
tooltool-downloads: internal
+ run-on-projects: ['release']
fetches:
toolchain:
- android-gradle-dependencies
+ - android-gradle-python-envs
- android-ndk-linux
- android-sdk-linux
- linux64-jdk
@@ -318,9 +358,11 @@ jobs:
- builds/releng_base_android_64_builds.py
custom-build-variant-cfg: aarch64-profile-generate
tooltool-downloads: internal
+ run-on-projects: ['release']
fetches:
toolchain:
- android-gradle-dependencies
+ - android-gradle-python-envs
- android-ndk-linux
- android-sdk-linux
- linux64-jdk
@@ -352,6 +394,47 @@ jobs:
extra-config:
stage_platform: win32
mozconfig_platform: win32
+ run-on-projects: ['release']
+ fetches:
+ toolchain:
+ - linux64-clang
+ - linux64-rust-cross
+ - linux64-rust-size
+ - linux64-nasm
+ - linux64-node
+ - linux64-cbindgen
+ - linux64-dump_syms
+ - linux64-wine
+ - linux64-winchecksec
+ - nsis
+ - sysroot-x86_64-linux-gnu
+ - sysroot-wasm32-wasi
+ - vs
+ - windows-rs
+ fetch:
+ - upx-3.95-win
+
+ win64-nightlyasrelease/opt:
+ description: "Win64 Shippable PGO Instrumented"
+ index:
+ product: firefox
+ job-name: instrumented-nightlyasrelease-win64
+ shipping-product: firefox
+ treeherder:
+ platform: win64-nightlyasrelease/opt
+ worker-type: b-linux-gcp
+ run:
+ options: [append-env-variables-from-configs]
+ mozconfig-variant: profile-generate
+ config:
+ - builds/releng_base_firefox.py
+ - builds/releng_base_linux_64_builds.py
+ extra-config:
+ stage_platform: win64
+ mozconfig_platform: win64
+ extra_mozconfig_content:
+ - ac_add_options --as-milestone=release
+ run-on-projects: [trunk-only]
fetches:
toolchain:
- linux64-clang
@@ -389,6 +472,7 @@ jobs:
extra-config:
stage_platform: win64
mozconfig_platform: win64
+ run-on-projects: ['release']
fetches:
toolchain:
- linux64-clang
diff --git a/taskcluster/ci/l10n-bump/kind.yml b/taskcluster/ci/l10n-bump/kind.yml
index 2dd21e4068..d40f9c48e9 100644
--- a/taskcluster/ci/l10n-bump/kind.yml
+++ b/taskcluster/ci/l10n-bump/kind.yml
@@ -50,6 +50,7 @@ job-defaults:
- linux-devedition
- linux64
- linux64-devedition
+ - linux64-aarch64
- win32
- win32-devedition
- win64
@@ -64,6 +65,7 @@ job-defaults:
"linux",
"linux-devedition",
"linux64",
+ "linux64-aarch64",
"linux64-devedition",
"macosx64",
"macosx64-devedition",
@@ -90,6 +92,7 @@ job-defaults:
- linux
- linux-devedition
- linux64
+ - linux64-aarch64
- linux64-devedition
- win32
- win32-devedition
@@ -105,6 +108,7 @@ job-defaults:
"linux",
"linux-devedition",
"linux64",
+ "linux64-aarch64",
"linux64-devedition",
"macosx64",
"macosx64-devedition",
diff --git a/taskcluster/ci/l10n/kind.yml b/taskcluster/ci/l10n/kind.yml
index d1effef2e6..eeb0b2c54e 100644
--- a/taskcluster/ci/l10n/kind.yml
+++ b/taskcluster/ci/l10n/kind.yml
@@ -19,6 +19,7 @@ kind-dependencies:
only-for-build-platforms:
- linux64-shippable/opt
+ - linux64-aarch64-shippable/opt
- linux-shippable/opt
- macosx64-shippable/opt
- win32-shippable/opt
@@ -65,7 +66,8 @@ jobs:
job-name:
by-build-platform:
linux(?!64).*: linux-opt
- linux64.*: linux64-opt
+ linux64(?!-aarch64).*: linux64-opt
+ linux64-aarch64.*: linux64-aarch64-opt
macosx64.*: macosx64-opt
win32.*: win32-opt
win64.*: win64-opt
@@ -81,6 +83,8 @@ jobs:
by-build-platform:
linux64: linux64/opt
linux64-shippable: linux64-shippable/opt
+ linux64-aarch64: linux64-aarch64/opt
+ linux64-aarch64-shippable: linux64-aarch64-shippable/opt
linux: linux32/opt
linux-shippable: linux32-shippable/opt
macosx64: osx-cross/opt
diff --git a/taskcluster/ci/mar-signing/kind.yml b/taskcluster/ci/mar-signing/kind.yml
index b91498cf62..e0feeaa0ff 100644
--- a/taskcluster/ci/mar-signing/kind.yml
+++ b/taskcluster/ci/mar-signing/kind.yml
@@ -16,7 +16,7 @@ kind-dependencies:
only-for-build-platforms:
- linux-shippable/opt
- linux64-shippable/opt
- - linux-aarch64-shippable/opt
+ - linux64-aarch64-shippable/opt
- macosx64-shippable/opt
- win32-shippable/opt
- win64-shippable/opt
diff --git a/taskcluster/ci/openh264-plugin/kind.yml b/taskcluster/ci/openh264-plugin/kind.yml
index 993489e3f6..e8459df438 100644
--- a/taskcluster/ci/openh264-plugin/kind.yml
+++ b/taskcluster/ci/openh264-plugin/kind.yml
@@ -21,7 +21,7 @@ job-defaults:
run-on-projects: []
repo: 'https://github.com/cisco/openh264.git'
revision: '31c4d2e4a037526fd30d4e5c39f60885986cf865'
- use-system-python: false
+ use-python: default
worker:
chain-of-trust: true
diff --git a/taskcluster/ci/perftest/android.yml b/taskcluster/ci/perftest/android.yml
index 6faebffee9..1ed071a1a1 100644
--- a/taskcluster/ci/perftest/android.yml
+++ b/taskcluster/ci/perftest/android.yml
@@ -189,6 +189,31 @@ hw-a51-startup-geckoview-cold-view-nav-start:
--AndroidStartUp-product=geckoview_example
--AndroidStartUp-release-channel=nightly
+hw-a51-startup-chrome-m-cold-main-first-frame:
+ worker-type: t-bitbar-gw-perf-a51
+ description: Run android startup perftest on Chrome on a Samsung A51
+ treeherder:
+ symbol: perftest(startup-chrome-m-cmff)
+ tier: 2
+ platform: android-hw-a51-11-0-aarch64-shippable/opt
+ attributes:
+ cron: true
+ run:
+ command: >-
+ mkdir -p $MOZ_FETCHES_DIR/../artifacts &&
+ cd $GECKO_PATH &&
+ python3 python/mozperftest/mozperftest/runner.py
+ --flavor=mobile-browser
+ --AndroidStartUp
+ testing/performance/perftest_android_startup.js
+ --browsertime-cycles=0
+ --AndroidStartUp-test-name=cold_main_first_frame
+ --perfherder
+ --hooks
+ testing/performance/hooks_android_startup.py
+ --AndroidStartUp-product=chrome-m
+ --AndroidStartUp-release-channel=release
+
hw-a51-perfstats-gv:
worker-type: t-bitbar-gw-perf-a51
description: Run PerfStats perftest on GeckoView on a Samsung A51
diff --git a/taskcluster/ci/perftest/kind.yml b/taskcluster/ci/perftest/kind.yml
index 5d8f253653..8a92fe55b2 100644
--- a/taskcluster/ci/perftest/kind.yml
+++ b/taskcluster/ci/perftest/kind.yml
@@ -25,7 +25,7 @@ job-defaults:
attributes:
retrigger: true
run-on-projects: []
- use-system-python: false
+ use-python: default
treeherder:
kind: other
tier: 3
diff --git a/taskcluster/ci/post-beetmover-components-dummy/kind.yml b/taskcluster/ci/post-beetmover-components-dummy/kind.yml
new file mode 100644
index 0000000000..bf8d98a83c
--- /dev/null
+++ b/taskcluster/ci/post-beetmover-components-dummy/kind.yml
@@ -0,0 +1,35 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - taskgraph.transforms.from_deps
+ - android_taskgraph.transforms.post_dummy
+ - android_taskgraph.transforms.chunk
+ - gecko_taskgraph.transforms.task
+
+kind-dependencies:
+ - beetmover-components
+
+jobs:
+ post-beetmover:
+ description: Dummy task to wait on all builds before publishing them
+ from-deps:
+ group-by: build-type
+ unique-kinds: false
+ copy-attributes: true
+ attributes:
+ component: all
+ worker-type: succeed
+ treeherder:
+ kind: build
+ platform: AC-android-all/opt
+ symbol:
+ by-build-type:
+ release: post-beetmover-release
+ beta: post-beetmover-beta
+ nightly: post-beetmover-nightly
+ default: post-beetmover
+ tier: 1
diff --git a/taskcluster/ci/post-signing/kind.yml b/taskcluster/ci/post-signing/kind.yml
new file mode 100644
index 0000000000..b07436b619
--- /dev/null
+++ b/taskcluster/ci/post-signing/kind.yml
@@ -0,0 +1,36 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - taskgraph.transforms.from_deps
+ - android_taskgraph.transforms.post_dummy
+ - android_taskgraph.transforms.chunk
+ - gecko_taskgraph.transforms.task
+
+kind-dependencies:
+ - signing
+
+jobs:
+ post-signing:
+ description: Dummy task to wait on all builds before publishing them
+ from-deps:
+ group-by: build-type
+ unique-kinds: false
+ copy-attributes: true
+ attributes:
+ component: all
+ worker-type: succeed
+ worker: {}
+ treeherder:
+ kind: build
+ platform: AC-android-all/opt
+ symbol:
+ by-build-type:
+ release: post-signing-release
+ beta: post-signing-beta
+ nightly: post-signing-nightly
+ default: post-signing
+ tier: 1
diff --git a/taskcluster/ci/push-bundle/kind.yml b/taskcluster/ci/push-bundle/kind.yml
new file mode 100644
index 0000000000..2c48a14177
--- /dev/null
+++ b/taskcluster/ci/push-bundle/kind.yml
@@ -0,0 +1,73 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - taskgraph.transforms.from_deps
+ - android_taskgraph.transforms.upstream_artifacts
+ - android_taskgraph.transforms.treeherder
+ - android_taskgraph.transforms.push_android_app
+ - gecko_taskgraph.transforms.task
+
+kind-dependencies:
+ - signing-bundle
+ - android-startup-test
+
+jobs:
+ push-bundle:
+ description: Publish Fenix and Focus AABs
+ from-deps:
+ with-attributes:
+ build-type:
+ - fenix-nightly
+ - fenix-beta
+ - fenix-release
+ - focus-nightly
+ - focus-beta
+ - focus-release
+ - klar-release
+ group-by:
+ attribute: build-type
+ copy-attributes: true
+ worker-type: push-apk
+ worker:
+ certificate-alias:
+ by-build-type:
+ fenix-nightly: fenix-nightly
+ fenix-beta: fenix-beta
+ fenix-release: fenix-release
+ default: focus
+ commit: true
+ channel:
+ by-build-type:
+ fenix-nightly: fenix-nightly
+ fenix-beta: fenix-beta
+ fenix-release: fenix-release
+ focus-nightly: focus-nightly
+ focus-beta: focus-beta
+ focus-release: focus-release
+ klar-release: klar-release
+ dep:
+ by-level:
+ '3': false
+ default: true
+ product:
+ by-build-type:
+ (fenix-nightly|fenix-release|fenix-beta): fenix
+ default: focus-android
+ shipping-phase: push
+ shipping-product: firefox-android
+ treeherder:
+ symbol:
+ by-build-type:
+ default: gp-aab
+ focus-release: gpf-aab
+ klar-release: gpkl-aab
+ kind: build
+ routes:
+ by-level:
+ '3':
+ - "notify.email.release-mgmt@mozilla.com.on-failed"
+ 'default': []
diff --git a/taskcluster/ci/release-early-tagging/kind.yml b/taskcluster/ci/release-early-tagging/kind.yml
index 9b194fb441..775bb4ed7e 100644
--- a/taskcluster/ci/release-early-tagging/kind.yml
+++ b/taskcluster/ci/release-early-tagging/kind.yml
@@ -44,3 +44,12 @@ jobs:
symbol: Rel(TagBuild)
tier: 1
kind: build
+
+ firefox-android:
+ name: firefox-android-tag-buildN
+ shipping-product: firefox-android
+ treeherder:
+ platform: fenix-android-all/opt
+ symbol: Rel(TagBuild)
+ tier: 1
+ kind: build
diff --git a/taskcluster/ci/release-mark-as-shipped/kind.yml b/taskcluster/ci/release-mark-as-shipped/kind.yml
index c9f6c82973..05faa3f88e 100644
--- a/taskcluster/ci/release-mark-as-shipped/kind.yml
+++ b/taskcluster/ci/release-mark-as-shipped/kind.yml
@@ -38,3 +38,7 @@ jobs:
devedition:
name: release-devedition_mark_as_shipped
shipping-product: devedition
+
+ firefox-android:
+ name: release-firefox-android_mark_as_shipped
+ shipping-product: firefox-android
diff --git a/taskcluster/ci/release-notify-promote/kind.yml b/taskcluster/ci/release-notify-promote/kind.yml
index 9fcc8a3262..bc53da5a49 100644
--- a/taskcluster/ci/release-notify-promote/kind.yml
+++ b/taskcluster/ci/release-notify-promote/kind.yml
@@ -13,6 +13,8 @@ kind-dependencies:
- post-beetmover-dummy
- release-generate-checksums-beetmover
- release-bouncer-sub
+ - signing-apk
+ - signing-bundle
job-defaults:
name: notify-release-drivers-promote
@@ -34,3 +36,5 @@ jobs:
shipping-product: firefox
devedition:
shipping-product: devedition
+ firefox-android:
+ shipping-product: firefox-android
diff --git a/taskcluster/ci/release-notify-push/kind.yml b/taskcluster/ci/release-notify-push/kind.yml
index 1b641d383e..be1a7b5be8 100644
--- a/taskcluster/ci/release-notify-push/kind.yml
+++ b/taskcluster/ci/release-notify-push/kind.yml
@@ -11,6 +11,7 @@ transforms:
kind-dependencies:
- release-beetmover-push-to-release
+ - push-bundle
job-defaults:
name: notify-release-drivers-push
@@ -32,3 +33,15 @@ jobs:
shipping-product: firefox
devedition:
shipping-product: devedition
+ firefox-android:
+ shipping-product: firefox-android
+ notifications:
+ subject: "Focus/Fenix {release_config[version]}-build{release_config[build_number]} has been pushed to the closed testing track on Google Play"
+ message:
+ by-level:
+ '3':
+ Focus/Fenix {release_config[version]}-build{release_config[build_number]} has been pushed to the closed testing track on Google Play
+ and Android-Components {release_config[version]}-build{release_config[build_number]} have been pushed to https://maven.mozilla.org/
+ default:
+ Focus/Fenix {release_config[version]}-build{release_config[build_number]} has not been pushed to the closed testing track on Google Play
+ and Android-Components {release_config[version]}-build{release_config[build_number]} have been pushed to https://maven-default.stage.mozaws.net/"
diff --git a/taskcluster/ci/release-notify-ship/kind.yml b/taskcluster/ci/release-notify-ship/kind.yml
index 6f0c0f7627..fe3eced6e7 100644
--- a/taskcluster/ci/release-notify-ship/kind.yml
+++ b/taskcluster/ci/release-notify-ship/kind.yml
@@ -14,6 +14,8 @@ kind-dependencies:
- release-bouncer-aliases
- release-version-bump
- release-mark-as-shipped
+ - push-bundle
+ - post-beetmover-components-dummy
job-defaults:
name: notify-release-drivers-ship
@@ -39,3 +41,8 @@ jobs:
notifications:
subject: "{task[shipping-product]} {release_config[version]} build{release_config[build_number]}/{config[params][project]} updates are ready for signoff in Balrog!"
message: "{task[shipping-product]} {release_config[version]} build{release_config[build_number]}/{config[params][project]} updates are ready for signoff in Balrog!"
+ firefox-android:
+ shipping-product: firefox-android
+ notifications:
+ subject: "{task[shipping-product]} {release_config[version]} build{release_config[build_number]}/{config[params][project]} is shipped!"
+ message: "{task[shipping-product]} {release_config[version]} build{release_config[build_number]}/{config[params][project]} is shipped!"
diff --git a/taskcluster/ci/release-notify-started/kind.yml b/taskcluster/ci/release-notify-started/kind.yml
index 004665789d..929c07ec59 100644
--- a/taskcluster/ci/release-notify-started/kind.yml
+++ b/taskcluster/ci/release-notify-started/kind.yml
@@ -30,3 +30,5 @@ jobs:
shipping-product: firefox
devedition:
shipping-product: devedition
+ firefox-android:
+ shipping-product: firefox-android
diff --git a/taskcluster/ci/release-notify-testrail/kind.yml b/taskcluster/ci/release-notify-testrail/kind.yml
new file mode 100644
index 0000000000..5e4fa41307
--- /dev/null
+++ b/taskcluster/ci/release-notify-testrail/kind.yml
@@ -0,0 +1,85 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - gecko_taskgraph.transforms.test_apk
+ - gecko_taskgraph.transforms.job:transforms
+ - gecko_taskgraph.transforms.task:transforms
+
+kind-dependencies:
+ - ui-test-apk
+
+job-defaults:
+ description: Sends Slack message to release testers that Testrail Milestone was created.
+ treeherder:
+ kind: other
+ tier: 2
+ symbol: testrail
+ worker-type: b-linux-gcp
+ worker:
+ docker-image: {in-tree: android-ui-tests}
+ max-run-time: 1800
+ run:
+ use-caches: false
+ using: run-commands
+ secrets:
+ - name: project/mobile/ci/testrail
+ key: testrailCredentials
+ path: .testrail_credentials.json
+ json: true
+ run-on-projects: [mozilla-beta, mozilla-release]
+ routes:
+ by-level:
+ '3':
+ - notify.slack-channel.G016BC5FUHJ.on-failed
+ default: []
+ scopes:
+ by-level:
+ '3':
+ - queue:route:notify.slack-channel.G016BC5FUHJ # notify mobile-alerts-sandbox on failure
+ - notify:slack-channel:G016BC5FUHJ
+ - queue:route:notify.slack-channel.C02KDDS9QM9 # notify mobile-testeng on success
+ - notify:slack-channel:C02KDDS9QM9
+ default: []
+
+jobs:
+ create-milestone-focus:
+ dependencies:
+ ui-test-apk: ui-test-apk-focus-arm-beta
+ description: Create Testrail Milestone for Focus
+ treeherder:
+ platform: focus-android-all/opt
+ run:
+ pre-commands:
+ # get-secrets is called from '..' directory so we need to cd into any directory to make it work
+ - ["cd", "mobile/android/focus-android"]
+ commands:
+ - [python3, "../../../taskcluster/scripts/testrail_main.py"]
+ worker:
+ env:
+ SHIPPING_PRODUCT: focus
+ TESTRAIL_PRODUCT_TYPE: Focus
+ TESTRAIL_PROJECT_ID: '48' # Focus Browser
+ TESTRAIL_TEST_SUITE_ID: '49386' # Test Automation Release Milestone - Focus
+
+ create-milestone-fenix:
+ dependencies:
+ ui-test-apk: ui-test-apk-fenix-arm-beta
+ treeherder:
+ platform: fenix-android-all/opt
+ description: Create Testrail Milestone for Fenix
+ run:
+ pre-commands:
+ # get-secrets is called from '..' directory so we need to cd into any directory to make it work
+ - ["cd", "mobile/android/fenix"]
+ commands:
+ - [python3, "../../../taskcluster/scripts/testrail_main.py"]
+ worker:
+ env:
+ SHIPPING_PRODUCT: fenix
+ TESTRAIL_PRODUCT_TYPE: Firefox
+ TESTRAIL_PROJECT_ID: '59' # Fenix Browser
+ TESTRAIL_TEST_SUITE_ID: '49319' # Test Automation Release Milestone - Fenix
diff --git a/taskcluster/ci/release-version-bump/kind.yml b/taskcluster/ci/release-version-bump/kind.yml
index be1d9cd85f..114d52df95 100644
--- a/taskcluster/ci/release-version-bump/kind.yml
+++ b/taskcluster/ci/release-version-bump/kind.yml
@@ -11,6 +11,8 @@ transforms:
kind-dependencies:
- release-beetmover-push-to-release
+ - post-beetmover-components-dummy
+ - push-bundle
job-defaults:
description: Release Promotion version bump/tag
@@ -22,10 +24,19 @@ job-defaults:
dontbuild: true
tags: ['release']
bump: true
+ # We're bumping both desktop and mobile version regardless of which product is getting
+ # released, to avoid confusion from them getting out of sync.
bump-files:
by-project:
- default: ["browser/config/version_display.txt"]
- mozilla-(release|esr.*):
+ default:
+ - "browser/config/version_display.txt"
+ - "mobile/android/version.txt"
+ mozilla-release:
+ - "browser/config/version.txt"
+ - "browser/config/version_display.txt"
+ - "config/milestone.txt"
+ - "mobile/android/version.txt"
+ mozilla-esr.*:
- "browser/config/version.txt"
- "browser/config/version_display.txt"
- "config/milestone.txt"
@@ -57,3 +68,12 @@ jobs:
symbol: Rel(VerBump)
tier: 1
kind: build
+
+ firefox-android:
+ name: firefox-android-version-bump
+ shipping-product: firefox-android
+ treeherder:
+ platform: fenix-android-all/opt
+ symbol: Rel(VerBump)
+ tier: 1
+ kind: build
diff --git a/taskcluster/ci/repackage-msix/kind.yml b/taskcluster/ci/repackage-msix/kind.yml
index 90e3506f54..96ff07c77c 100644
--- a/taskcluster/ci/repackage-msix/kind.yml
+++ b/taskcluster/ci/repackage-msix/kind.yml
@@ -19,11 +19,14 @@ kind-dependencies:
only-for-build-platforms:
- win32/opt
- win64/opt
+ - win64-aarch64/opt
- win64/debug
- win32-shippable/opt
- win64-shippable/opt
+ - win64-aarch64-shippable/opt
- win32-devedition/opt
- win64-devedition/opt
+ - win64-aarch-devedition/opt
jobs:
repackage-msix:
diff --git a/taskcluster/ci/repackage-shippable-l10n-msix/kind.yml b/taskcluster/ci/repackage-shippable-l10n-msix/kind.yml
index 6be2a95bf0..021896a7ad 100644
--- a/taskcluster/ci/repackage-shippable-l10n-msix/kind.yml
+++ b/taskcluster/ci/repackage-shippable-l10n-msix/kind.yml
@@ -25,8 +25,10 @@ not-for-kind-dependencies:
only-for-build-platforms:
- win32-shippable/opt
- win64-shippable/opt
+ - win64-aarch64-shippable/opt
- win32-devedition/opt
- win64-devedition/opt
+ - win64-aarch64-devedition/opt
jobs:
repackage-shippable-l10n-msix:
diff --git a/taskcluster/ci/repackage/kind.yml b/taskcluster/ci/repackage/kind.yml
index 2644e9d5f5..b9f94f4a89 100644
--- a/taskcluster/ci/repackage/kind.yml
+++ b/taskcluster/ci/repackage/kind.yml
@@ -27,7 +27,7 @@ only-for-build-platforms:
- linux64-devedition/opt
- linux64-asan-reporter-shippable/opt
- linux64/opt
- - linux-aarch64-shippable/opt
+ - linux64-aarch64-shippable/opt
- macosx64-shippable/opt
- macosx64-devedition/opt
- macosx64/opt
diff --git a/taskcluster/ci/repo-update/kind.yml b/taskcluster/ci/repo-update/kind.yml
index 414c3bd4f8..50c7c0ac0e 100644
--- a/taskcluster/ci/repo-update/kind.yml
+++ b/taskcluster/ci/repo-update/kind.yml
@@ -30,7 +30,7 @@ job-defaults:
default: ""
DO_MOBILE_EXPERIMENTS:
by-project:
- mozilla-central: "" # TODO: enable after firefox-android merge
+ mozilla-(central|beta): "1"
default: ""
USE_MOZILLA_CENTRAL:
by-project:
diff --git a/taskcluster/ci/searchfox/kind.yml b/taskcluster/ci/searchfox/kind.yml
index 71f94197ce..492cba940d 100644
--- a/taskcluster/ci/searchfox/kind.yml
+++ b/taskcluster/ci/searchfox/kind.yml
@@ -24,7 +24,7 @@ job-defaults:
tier: 2
run-on-projects: ['mozilla-central']
optimization: null
- use-system-python: false
+ use-python: default
# These builds don't use sccache because otherwise we wouldn't index
# the files that sccache optimizes away compilation for.
use-sccache: false
@@ -209,6 +209,7 @@ jobs:
fetches:
toolchain:
- android-gradle-dependencies
+ - android-gradle-python-envs
- android-ndk-linux
- android-sdk-linux
- linux64-jdk
diff --git a/taskcluster/ci/signing-apk/kind.yml b/taskcluster/ci/signing-apk/kind.yml
new file mode 100644
index 0000000000..85b2f21bfd
--- /dev/null
+++ b/taskcluster/ci/signing-apk/kind.yml
@@ -0,0 +1,71 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - taskgraph.transforms.from_deps
+ - android_taskgraph.transforms.upstream_artifacts
+ - android_taskgraph.transforms.treeherder:transforms
+ - android_taskgraph.transforms.signing_android_app:transforms
+ - android_taskgraph.transforms.notify:transforms
+ - gecko_taskgraph.transforms.task:transforms
+
+kind-dependencies:
+ - build-apk
+
+jobs:
+ sign-apk:
+ description: Sign Android APKs
+ from-deps:
+ copy-attributes: true
+ worker:
+ implementation: scriptworker-signing
+ signing-format:
+ by-build-type:
+ (focus-.*|klar-.*): autograph_focus
+ fenix-(beta|release)-mozillaonline: autograph_apk_mozillaonline
+ default: autograph_apk
+ index:
+ by-build-type:
+ (focus-nightly|focus-release|klar-release|focus-beta|fenix-nightly|fenix-debug|fenix-nightly-simulation|fenix-beta|fenix-beta-mozillaonline|fenix-release|fenix-release-mozillaonline):
+ type: generic
+ product: mobile
+ default: {}
+ run-on-projects: []
+ treeherder:
+ symbol:
+ by-build-type:
+ default: Bs
+ focus-(debug|nightly|beta|release)$: Bfs
+ focus-(nightly|beta)-firebase$: Bffs
+ focus-android-test-(debug|nightly|beta)$: Bats
+ klar-.*: Bkls
+ fenix-android-test.+: Bats
+ fenix-android-test-mozillaonline: Bats-mo
+ fenix-beta-firebase: Bfs
+ fenix-nightly-firebase: Bfs
+ fenix-beta-mozillaonline: Bmos
+ fenix-release-mozillaonline: Bmos
+ kind: build
+ platform:
+ by-build-type:
+ (fenix.*): fenix-android-all/opt
+ default: focus-android-all/opt
+ tier: 1
+ notify:
+ by-build-type:
+ .*(fenix-beta|fenix-release)-mozillaonline:
+ by-level:
+ '3':
+ email:
+ content: The Mozilla Online Fenix {version} APKs are now available
+ link:
+ text: Taskcluster Task
+ href: 'https://firefox-ci-tc.services.mozilla.com/tasks/${status.taskId}'
+ on-reasons: [completed]
+ subject: Mozilla Online Fenix {version} APKs are now available
+ to-addresses: [mozillaonline-fenix@mozilla.com]
+ default: {}
+ default: {}
diff --git a/taskcluster/ci/signing-bundle/kind.yml b/taskcluster/ci/signing-bundle/kind.yml
new file mode 100644
index 0000000000..e062282fd6
--- /dev/null
+++ b/taskcluster/ci/signing-bundle/kind.yml
@@ -0,0 +1,41 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - taskgraph.transforms.from_deps
+ - android_taskgraph.transforms.upstream_artifacts
+ - android_taskgraph.transforms.treeherder:transforms
+ - android_taskgraph.transforms.signing_android_app:transforms
+ - android_taskgraph.transforms.notify:transforms
+ - gecko_taskgraph.transforms.task:transforms
+
+kind-dependencies:
+ - build-bundle
+
+jobs:
+ sign-bundle:
+ description: Sign Android AABs
+ from-deps:
+ copy-attributes: true
+ worker:
+ implementation: scriptworker-signing
+ signing-format:
+ by-build-type:
+ (focus-.*|klar-.*): autograph_focus
+ default: autograph_apk
+ run-on-projects: []
+ treeherder:
+ symbol:
+ by-build-type:
+ focus-(debug|nightly|beta|release)$: AABfs
+ klar-.*: AABkls
+ default: AABs
+ kind: build
+ platform:
+ by-build-type:
+ (fenix.*): fenix-android-all/opt
+ default: focus-android-all/opt
+ tier: 1
diff --git a/taskcluster/ci/signing/kind.yml b/taskcluster/ci/signing/kind.yml
new file mode 100644
index 0000000000..655750438c
--- /dev/null
+++ b/taskcluster/ci/signing/kind.yml
@@ -0,0 +1,42 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - taskgraph.transforms.from_deps
+ - android_taskgraph.transforms.upstream_artifacts
+ - android_taskgraph.transforms.signing
+ - android_taskgraph.transforms.treeherder
+ - gecko_taskgraph.transforms.task
+
+kind-dependencies:
+ - build-components
+
+jobs:
+ sign-build:
+ description: Sign component
+ from-deps:
+ with-attributes:
+ build-type:
+ - release
+ - beta
+ - nightly
+ group-by: component
+ copy-attributes: true
+ run-on-projects: []
+ treeherder:
+ symbol:
+ by-build-type:
+ release: BRs
+ beta: BBs
+ nightly: BNs
+ default: Bs
+ kind: build
+ worker-type:
+ by-level:
+ '3': linux-signing
+ default: linux-depsigning
+ worker:
+ implementation: scriptworker-signing
diff --git a/taskcluster/ci/source-test/android-compare-locales.yml b/taskcluster/ci/source-test/android-compare-locales.yml
new file mode 100644
index 0000000000..6423ad708d
--- /dev/null
+++ b/taskcluster/ci/source-test/android-compare-locales.yml
@@ -0,0 +1,47 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+job-defaults:
+ description: 'Validate android strings.xml with compare-locales'
+ run:
+ using: run-task
+ cwd: '{checkout}'
+ command: 'pip install --break-system-packages --user "compare-locales>=5.0.2,<6.0" && /builds/worker/.local/bin/compare-locales --validate l10n.toml .'
+ worker-type: t-linux-xlarge-source
+ platform: lint/opt
+ treeherder:
+ kind: other
+ tier: 2
+ worker:
+ docker-image: {in-tree: lint}
+ max-run-time: 1800
+ use-python: system
+
+
+compare-locales-android-components:
+ optimization:
+ skip-unless-changed:
+ - "mobile/android/android-components/**"
+ run:
+ cwd: '{checkout}/mobile/android/android-components'
+ treeherder:
+ symbol: compare-locales(AC)
+
+compare-locales-focus:
+ optimization:
+ skip-unless-changed:
+ - "mobile/android/focus-android/**"
+ run:
+ cwd: '{checkout}/mobile/android/focus-android'
+ treeherder:
+ symbol: compare-locales(focus)
+
+compare-locales-fenix:
+ optimization:
+ skip-unless-changed:
+ - "mobile/android/fenix/**"
+ run:
+ cwd: '{checkout}/mobile/android/fenix'
+ treeherder:
+ symbol: compare-locales(fenix)
diff --git a/taskcluster/ci/source-test/android-detekt.yml b/taskcluster/ci/source-test/android-detekt.yml
new file mode 100644
index 0000000000..84f46ed6b7
--- /dev/null
+++ b/taskcluster/ci/source-test/android-detekt.yml
@@ -0,0 +1,76 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+job-defaults:
+ description: 'Run detekt over all modules'
+ run:
+ using: gradlew
+ gradlew: ['detekt']
+ use-caches: false
+ worker:
+ docker-image: {in-tree: lint}
+ max-run-time: 1200
+ env:
+ JAVA_HOME: "/builds/worker/fetches/jdk/jdk-17.0.6+10"
+ attributes:
+ code-review: true
+ always-target: true
+ fetches:
+ toolchain:
+ - android-sdk-linux
+ - android-gradle-dependencies
+ - android-gradle-python-envs
+ - linux64-jdk-repack
+ platform: 'lint/opt'
+ treeherder:
+ kind: test
+ tier: 1
+ worker-type: b-linux-gcp
+ when:
+ files-changed:
+ - "mobile/android/android-components/**"
+
+
+detekt-android-components:
+ run:
+ pre-gradlew:
+ - ["cd", "mobile/android/android-components"]
+ treeherder:
+ symbol: detekt(AC)
+ worker:
+ artifacts:
+ - name: public/reports
+ path: /builds/worker/checkouts/gecko/mobile/android/android-components/build/reports
+ type: directory
+
+detekt-focus:
+ when:
+ files-changed:
+ - "mobile/android/focus-android/**"
+ run:
+ pre-gradlew:
+ - ["cd", "mobile/android/focus-android"]
+ treeherder:
+ symbol: detekt(focus)
+ worker:
+ artifacts:
+ - name: public/reports
+ path: /builds/worker/checkouts/gecko/mobile/android/focus-android/build/reports
+ type: directory
+
+detekt-fenix:
+ when:
+ files-changed:
+ - "mobile/android/fenix/**"
+ run:
+ pre-gradlew:
+ - ["cd", "mobile/android/fenix"]
+ gradlew: [detekt, 'mozilla-detekt-rules:test']
+ treeherder:
+ symbol: detekt(fenix)
+ worker:
+ artifacts:
+ - name: public/reports
+ path: /builds/worker/checkouts/gecko/mobile/android/fenix/build/reports
+ type: directory
diff --git a/taskcluster/ci/source-test/android-lint.yml b/taskcluster/ci/source-test/android-lint.yml
new file mode 100644
index 0000000000..c7eb456021
--- /dev/null
+++ b/taskcluster/ci/source-test/android-lint.yml
@@ -0,0 +1,66 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+job-defaults:
+ description: 'Run lint over all modules'
+ run:
+ using: gradlew
+ gradlew: ['lint']
+ use-caches: false
+ worker:
+ max-run-time: 2700
+ env:
+ JAVA_HOME: "/builds/worker/fetches/jdk/jdk-17.0.6+10"
+ docker-image: {in-tree: lint}
+ always-target: false
+ attributes:
+ code-review: true
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ fetches:
+ toolchain:
+ - android-sdk-linux
+ - android-gradle-dependencies
+ - android-gradle-python-envs
+ - linux64-jdk-repack
+ build-fat-aar:
+ - target.maven.tar.xz
+ platform: 'lint/opt'
+ treeherder:
+ kind: test
+ tier: 1
+ worker-type: b-linux-gcp
+ when:
+ files-changed:
+ - "mobile/android/android-components/**"
+
+
+android-components:
+ run:
+ pre-gradlew:
+ - ["cd", "mobile/android/android-components"]
+ gradlew: ["--no-parallel"]
+ treeherder:
+ symbol: lint(AC)
+
+focus:
+ when:
+ files-changed:
+ - "mobile/android/focus-android/**"
+ run:
+ pre-gradlew:
+ - ["cd", "mobile/android/focus-android"]
+ treeherder:
+ symbol: lint(focus)
+
+fenix:
+ when:
+ files-changed:
+ - "mobile/android/fenix/**"
+ run:
+ pre-gradlew:
+ - ["cd", "mobile/android/fenix"]
+ gradlew: ['lintDebug', 'mozilla-lint-rules:test']
+ treeherder:
+ symbol: lint(fenix)
diff --git a/taskcluster/ci/source-test/buildconfig.yml b/taskcluster/ci/source-test/buildconfig.yml
new file mode 100644
index 0000000000..85f0828a54
--- /dev/null
+++ b/taskcluster/ci/source-test/buildconfig.yml
@@ -0,0 +1,68 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+job-defaults:
+ description: Make sure the content of .buildconfig.yml matches what gradle knows about its projects
+ run:
+ using: run-task
+ cwd: '{checkout}'
+ worker-type: t-linux-xlarge-source
+ worker:
+ artifacts:
+ - type: directory
+ name: public
+ path: '/builds/worker/artifacts'
+ docker-image: {in-tree: lint}
+ max-run-time: 1800
+ env:
+ JAVA_HOME: "/builds/worker/fetches/jdk/jdk-17.0.6+10"
+ GRADLE_USER_HOME: "/builds/worker/checkouts/gecko/mobile/android/gradle/dotgradle-online"
+ MOZCONFIG: "/builds/worker/checkouts/gecko/mobile/android/config/mozconfigs/android-arm/nightly-android-lints"
+ ANDROID_SDK_ROOT: "/builds/worker/fetches/android-sdk-linux"
+ platform: lint/opt
+ treeherder:
+ kind: other
+ tier: 2
+ fetches:
+ toolchain:
+ - linux64-jdk-repack
+ - android-gradle-dependencies
+ - android-gradle-python-envs
+ - android-sdk-linux
+ use-python: system
+
+
+buildconfig-android-components:
+ optimization:
+ skip-unless-changed:
+ - "mobile/android/android-components/**/build.gradle"
+ - "mobile/android/android-components/.buildconfig.yml"
+ run:
+ command: 'pip install --break-system-packages --user --require-hashes --requirement taskcluster/scripts/lint/requirements.txt && ./mach --log-no-times build pre-export export && taskcluster/scripts/lint/is_buildconfig_yml_up_to_date.py mobile/android/android-components'
+ treeherder:
+ symbol: buildconfig(AC)
+
+buildconfig-focus:
+ optimization:
+ skip-unless-changed:
+ - "mobile/android/android-components/**/build.gradle" # A change in A-C may be reflected in focus
+ - "mobile/android/android-components/.buildconfig.yml"
+ - "mobile/android/focus-android/**/build.gradle"
+ - "mobile/android/focus-android/.buildconfig.yml"
+ run:
+ command: 'pip install --break-system-packages --user --require-hashes --requirement taskcluster/scripts/lint/requirements.txt && ./mach --log-no-times build pre-export export && taskcluster/scripts/lint/is_buildconfig_yml_up_to_date.py mobile/android/focus-android'
+ treeherder:
+ symbol: buildconfig(focus)
+
+buildconfig-fenix:
+ optimization:
+ skip-unless-changed:
+ - "mobile/android/android-components/**/build.gradle" # A change in A-C may be reflected in fenix
+ - "mobile/android/android-components/.buildconfig.yml"
+ - "mobile/android/fenix/**/build.gradle"
+ - "mobile/android/fenix/.buildconfig.yml"
+ run:
+ command: 'pip install --break-system-packages --user --require-hashes --requirement taskcluster/scripts/lint/requirements.txt && ./mach --log-no-times build pre-export export && taskcluster/scripts/lint/is_buildconfig_yml_up_to_date.py mobile/android/fenix'
+ treeherder:
+ symbol: buildconfig(fenix)
diff --git a/taskcluster/ci/source-test/kind.yml b/taskcluster/ci/source-test/kind.yml
index bb605e939a..f28ee39f96 100644
--- a/taskcluster/ci/source-test/kind.yml
+++ b/taskcluster/ci/source-test/kind.yml
@@ -16,13 +16,19 @@ kind-dependencies:
- fetch
- toolchain
- build
+ - build-fat-aar
jobs-from:
+ - android-compare-locales.yml
+ - android-detekt.yml
+ - android-lint.yml
+ - buildconfig.yml
- clang.yml
- cram.yml
- doc.yml
- file-metadata.yml
- jsshell.yml
+ - ktlint.yml
- mozlint.yml
- mozlint-android.yml
- node.yml
@@ -37,7 +43,7 @@ jobs-from:
- wpt-metadata.yml
job-defaults:
- use-system-python: false
+ use-python: default
attributes:
retrigger: true
task-context:
diff --git a/taskcluster/ci/source-test/ktlint.yml b/taskcluster/ci/source-test/ktlint.yml
new file mode 100644
index 0000000000..988f2b6660
--- /dev/null
+++ b/taskcluster/ci/source-test/ktlint.yml
@@ -0,0 +1,59 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+job-defaults:
+ description: 'Run ktlint over all modules'
+ run:
+ using: gradlew
+ gradlew: ['ktlint']
+ use-caches: false
+ attributes:
+ code-review: true
+ always-target: true
+ fetches:
+ toolchain:
+ - android-sdk-linux
+ - android-gradle-dependencies
+ - android-gradle-python-envs
+ - linux64-jdk-repack
+ platform: 'lint/opt'
+ treeherder:
+ kind: test
+ tier: 1
+ worker-type: b-linux-gcp
+ worker:
+ docker-image: {in-tree: lint}
+ max-run-time: 1200
+ env:
+ JAVA_HOME: "/builds/worker/fetches/jdk/jdk-17.0.6+10"
+ when:
+ files-changed:
+ - "mobile/android/android-components/**"
+
+android-components:
+ run:
+ pre-gradlew:
+ - ["cd", "mobile/android/android-components"]
+ treeherder:
+ symbol: ktlint(AC)
+
+focus:
+ when:
+ files-changed:
+ - "mobile/android/focus-android/**"
+ run:
+ pre-gradlew:
+ - ["cd", "mobile/android/focus-android"]
+ treeherder:
+ symbol: ktlint(focus)
+
+fenix:
+ when:
+ files-changed:
+ - "mobile/android/fenix/**"
+ run:
+ pre-gradlew:
+ - ["cd", "mobile/android/fenix"]
+ treeherder:
+ symbol: ktlint(fenix)
diff --git a/taskcluster/ci/source-test/mozlint-android.yml b/taskcluster/ci/source-test/mozlint-android.yml
index 6602d8c818..d98abe9734 100644
--- a/taskcluster/ci/source-test/mozlint-android.yml
+++ b/taskcluster/ci/source-test/mozlint-android.yml
@@ -81,6 +81,7 @@ lints:
toolchain:
# Aliases aren't allowed for toolchains installed by fetch.
- linux64-android-gradle-dependencies
+ - android-gradle-python-envs
- linux64-android-sdk-linux-repack
- linux64-jdk-repack
- linux64-node
diff --git a/taskcluster/ci/source-test/node.yml b/taskcluster/ci/source-test/node.yml
index f1df46b73d..1d8c8348fb 100644
--- a/taskcluster/ci/source-test/node.yml
+++ b/taskcluster/ci/source-test/node.yml
@@ -184,3 +184,38 @@ eslint-plugin-mozilla:
when:
files-changed:
- 'tools/lint/eslint/eslint-plugin-mozilla/**'
+
+design-tokens-tests:
+ description: design tokens unit tests
+ platform: linux1804-64/opt
+ treeherder:
+ symbol: node(design-tokens)
+ kind: test
+ tier: 1
+ worker-type: t-linux-xlarge-source
+ worker:
+ docker-image: {in-tree: "ubuntu1804-test"}
+ max-run-time: 1800
+ require-build:
+ by-project:
+ autoland:
+ linux1804-64/opt: build-linux64/opt
+ try:
+ linux1804-64/opt: build-linux64/opt
+ default:
+ linux1804-64/opt: build-linux64-shippable/opt
+ run:
+ using: run-task
+ cache-dotcache: true
+ cwd: '{checkout}'
+ command: >
+ cd /builds/worker/checkouts/gecko &&
+ rm -rf node_modules &&
+ npm ci &&
+ cd /builds/worker/checkouts/gecko/toolkit/themes/shared/design-system &&
+ rm -rf node_modules &&
+ npm ci &&
+ node tests/try-runner.js
+ when:
+ files-changed:
+ - "toolkit/themes/shared/design-system/**"
diff --git a/taskcluster/ci/source-test/python.yml b/taskcluster/ci/source-test/python.yml
index d9e0ede88b..43680aacad 100644
--- a/taskcluster/ci/source-test/python.yml
+++ b/taskcluster/ci/source-test/python.yml
@@ -24,7 +24,7 @@ job-defaults:
PATH: "/usr/local/bin:/bin:/sbin:/usr/bin:/usr/sbin"
default:
max-run-time: 3600
- use-system-python: false
+ use-python: default
treeherder:
kind: test
tier: 1
diff --git a/taskcluster/ci/source-test/taskgraph.yml b/taskcluster/ci/source-test/taskgraph.yml
index ab6883919a..3065c80482 100644
--- a/taskcluster/ci/source-test/taskgraph.yml
+++ b/taskcluster/ci/source-test/taskgraph.yml
@@ -24,11 +24,18 @@ diff:
platform: gecko-decision/opt
symbol: tgdiff
tier: 2
+ task-context:
+ from-parameters:
+ base_rev: base_rev
+ substitution-fields:
+ - run.command
run:
using: run-task
cwd: '{checkout}'
command: >-
- echo 'disabled'
+ mkdir -p /builds/worker/artifacts/diffs &&
+ ./mach taskgraph target --fast -p "taskcluster/test/params" --force-local-files-changed -o "/builds/worker/artifacts/diffs/diff.txt" --diff {base_rev} &&
+ python taskcluster/scripts/misc/summarize-tgdiff.py /builds/worker/artifacts/diffs/ 20
when:
files-changed:
- 'taskcluster/ci/**'
diff --git a/taskcluster/ci/startup-test/kind.yml b/taskcluster/ci/startup-test/kind.yml
index bc62e7e764..3e6975ae92 100644
--- a/taskcluster/ci/startup-test/kind.yml
+++ b/taskcluster/ci/startup-test/kind.yml
@@ -36,7 +36,7 @@ job-defaults:
symbol: SUT
kind: test
tier: 1
- use-system-python: false
+ use-python: default
jobs:
linux32:
diff --git a/taskcluster/ci/static-analysis-autotest/kind.yml b/taskcluster/ci/static-analysis-autotest/kind.yml
index 6a01325598..39497268a8 100644
--- a/taskcluster/ci/static-analysis-autotest/kind.yml
+++ b/taskcluster/ci/static-analysis-autotest/kind.yml
@@ -23,7 +23,7 @@ job-defaults:
max-run-time: 3600
env:
PERFHERDER_EXTRA_OPTIONS: static-analysis-autotest
- use-system-python: false
+ use-python: default
run-on-projects: ['mozilla-central']
run:
using: mozharness
diff --git a/taskcluster/ci/test-apk/kind.yml b/taskcluster/ci/test-apk/kind.yml
new file mode 100644
index 0000000000..b1fe6c2a88
--- /dev/null
+++ b/taskcluster/ci/test-apk/kind.yml
@@ -0,0 +1,157 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - gecko_taskgraph.transforms.test_apk:transforms
+ # While not a build, the build optimization works well for these tasks.
+ - gecko_taskgraph.transforms.build_schedules:transforms
+ - gecko_taskgraph.transforms.job:transforms
+ - gecko_taskgraph.transforms.task:transforms
+
+kind-dependencies:
+ - toolchain
+ - build-fat-aar
+
+job-defaults:
+ attributes:
+ retrigger: true
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ fetches:
+ toolchain:
+ - android-sdk-linux
+ - android-gradle-dependencies
+ - android-gradle-python-envs
+ - linux64-jdk
+ build-fat-aar:
+ - target.maven.tar.xz
+ run:
+ using: gradlew
+ use-caches: false
+ treeherder:
+ kind: test
+ worker-type: b-linux-medium-gcp
+ worker:
+ docker-image: {in-tree: android-components}
+ max-run-time: 7200
+
+jobs:
+ focus-debug:
+ description: Focus unit tests
+ attributes:
+ build-type: focus-debug
+ shipping-product: focus
+ run:
+ pre-gradlew:
+ - ["cd", "mobile/android/focus-android"]
+ gradlew: ['clean', 'test']
+ dummy-secrets:
+ - content: "faketoken"
+ path: .adjust_token
+ treeherder:
+ platform: 'focus-android-all/opt'
+ symbol: focus-debug(T)
+ tier: 1
+ worker:
+ artifacts:
+ - name: public/reports/index.html
+ path: /builds/worker/checkouts/gecko/mobile/android/focus-android/app/build/reports/tests/testFocusDebugUnitTest/index.html
+ type: file
+ - name: public/reports/test
+ path: /builds/worker/checkouts/gecko/mobile/android/focus-android/app/build/reports/tests
+ type: directory
+
+ fenix-debug:
+ description: Fenix unit tests
+ attributes:
+ build-type: fenix-debug
+ shipping-product: fenix
+ run:
+ pre-gradlew:
+ - ["cd", "mobile/android/fenix"]
+ - ['java', '-version']
+ gradlew: ['clean', 'testFenixDebugUnitTest']
+ treeherder:
+ platform: 'fenix-android-all/opt'
+ symbol: fenix-debug(T)
+ tier: 1
+ worker:
+ artifacts:
+ - name: public/reports/index.html
+ path: /builds/worker/checkouts/gecko/mobile/android/fenix/app/build/reports/tests/testFenixDebugUnitTest/index.html
+ type: file
+ - name: public/reports/test
+ path: /builds/worker/checkouts/gecko/mobile/android/fenix/app/build/reports/tests
+ type: directory
+ routes:
+ by-level:
+ '3':
+ - notify.slack-channel.G016BC5FUHJ.on-failed
+ 'default': []
+ scopes:
+ by-level:
+ '3':
+ - queue:route:notify.slack-channel.G016BC5FUHJ.on-failed
+ - notify:slack-channel:G016BC5FUHJ
+ 'default': []
+ extra:
+ notify:
+ by-level:
+ '3':
+ slackBlocks: |
+ [
+ {
+ "type": "header",
+ "text": {
+ "type": "plain_text",
+ "text": "firefox-android :firefox: ${task.metadata.name} :x:\n "
+ }
+ },
+ {
+ "type": "divider"
+ },
+ {
+ "type": "section",
+ "text": {
+ "type": "mrkdwn",
+ "text": "*Task*: <https://firefox-ci-tc.services.mozilla.com/tasks/${status.taskId}|Taskcluster>"
+ }
+ },
+ {
+ "type": "section",
+ "text": {
+ "type": "mrkdwn",
+ "text": "*Owner*: ${task.metadata.owner}"
+ }
+ },
+ {
+ "type": "section",
+ "text": {
+ "type": "mrkdwn",
+ "text": "*Source*: <${task.payload.env.GECKO_HEAD_REPOSITORY}/rev/${task.payload.env.GECKO_HEAD_REV}|Commit> :hg:"
+ }
+ },
+ {
+ "type": "section",
+ "text": {
+ "type": "mrkdwn",
+ "text": "*Test Summary*: <https://firefoxci.taskcluster-artifacts.net/${status.taskId}/0/public/reports/index.html|Results> :debug:"
+ }
+ },
+ {
+ "type": "divider"
+ },
+ {
+ "type": "context",
+ "elements": [
+ {
+ "type": "mrkdwn",
+ "text": ":testops-notify: created by <https://mozilla-hub.atlassian.net/wiki/spaces/MTE/overview|Mobile Test Engineering>"
+ }
+ ]
+ }
+ ]
+ 'default': {}
diff --git a/taskcluster/ci/test-components/kind.yml b/taskcluster/ci/test-components/kind.yml
new file mode 100644
index 0000000000..bbdc5f7edd
--- /dev/null
+++ b/taskcluster/ci/test-components/kind.yml
@@ -0,0 +1,89 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - android_taskgraph.transforms.ui_tests:transforms
+ # While not a build, the build optimization works well for these tasks.
+ - gecko_taskgraph.transforms.build_schedules:transforms
+ - gecko_taskgraph.transforms.job:transforms
+ - gecko_taskgraph.transforms.task:transforms
+
+kind-dependencies:
+ - toolchain
+ - build-fat-aar
+
+
+job-defaults:
+ attributes:
+ build-type: debug
+ retrigger: true
+ dependencies:
+ build-fat-aar: build-fat-aar-android-geckoview-fat-aar/opt
+ fetches:
+ toolchain:
+ - android-sdk-linux
+ - android-gradle-dependencies
+ - android-gradle-python-envs
+ - linux64-jdk
+ build-fat-aar:
+ - target.maven.tar.xz
+ run:
+ # TODO Generate APKs in a build task instead
+ gradlew: ['clean', 'assembleGecko', 'assembleAndroidTest', 'assembleDebug']
+ pre-gradlew:
+ - ["cd", "mobile/android/android-components"]
+ secrets:
+ - name: project/mobile/firefox-android/android-components/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ using: gradlew
+ use-caches: false
+ treeherder:
+ kind: test
+ platform: 'AC-ui-test/opt'
+ tier: 2
+ worker-type: b-linux-medium-gcp
+ worker:
+ artifacts:
+ - name: public
+ path: /builds/worker/artifacts
+ type: directory
+ docker-image: {in-tree: android-ui-tests}
+ env:
+ GOOGLE_APPLICATION_CREDENTIALS: '.firebase_token.json'
+ GOOGLE_PROJECT: moz-android-components-230120
+ max-run-time: 2400
+ optimization:
+ skip-unless-backstop: null
+
+
+jobs:
+ unit-browser-engine-gecko-nightly:
+ component: browser
+ description: 'Run unit tests on device for browser component'
+ treeherder:
+ symbol: 'ui-components'
+ ui-browser:
+ component: samples-browser
+ description: 'Run ui tests for browser sample'
+ treeherder:
+ symbol: 'ui-samples-browser'
+ ui-glean:
+ component: samples-glean
+ description: 'Run ui tests for glean sample'
+ treeherder:
+ symbol: 'ui-samples-glean'
+ android-feature-containers: {}
+ android-feature-pwa: {}
+ android-feature-share: {}
+ android-feature-sitepermissions: {}
+ android-feature-top-sites: {}
+ android-feature-logins: {}
+ android-feature-prompts: {}
+ android-support-ktx: {}
+ android-feature-downloads: {}
+ android-feature-recentlyclosed: {}
diff --git a/taskcluster/ci/test/awsy.yml b/taskcluster/ci/test/awsy.yml
index c3cafe7e9a..6ba85dcb82 100644
--- a/taskcluster/ci/test/awsy.yml
+++ b/taskcluster/ci/test/awsy.yml
@@ -5,7 +5,7 @@
job-defaults:
suite: awsy
max-run-time: 7200
- instance-size: xlarge
+ instance-size: xlarge-noscratch
virtualization:
by-test-platform:
windows.*(?:-shippable)?-qr/.*: virtual-with-gpu
diff --git a/taskcluster/ci/test/browsertime-desktop.yml b/taskcluster/ci/test/browsertime-desktop.yml
index fab92c40a6..f4a1abe080 100644
--- a/taskcluster/ci/test/browsertime-desktop.yml
+++ b/taskcluster/ci/test/browsertime-desktop.yml
@@ -16,8 +16,6 @@ job-defaults:
by-app:
chrome:
- .*shippable.*
- chromium:
- - .*shippable.*
safari:
- .*macos.*shippable.*
custom-car:
@@ -84,8 +82,6 @@ browsertime-tp6:
by-app:
chrome:
- .*shippable.*
- chromium:
- - .*shippable.*
safari:
- .*macos.*shippable.*
custom-car:
@@ -103,11 +99,6 @@ browsertime-tp6:
- --browsertime-no-ffwindowrecorder
- --conditioned-profile=settled
- --extra-profiler-run
- macosx1015.*:
- - --chimera
- - --browsertime-no-ffwindowrecorder
- - --conditioned-profile=settled
- - --extra-profiler-run
default:
- --chimera
- --conditioned-profile=settled
@@ -184,11 +175,6 @@ browsertime-responsiveness:
- --browsertime-no-ffwindowrecorder
- --conditioned-profile=settled
- --extra-profiler-run
- macosx1015.*:
- - --cold
- - --browsertime-no-ffwindowrecorder
- - --conditioned-profile=settled
- - --extra-profiler-run
default:
- --cold
- --conditioned-profile=settled
@@ -218,11 +204,6 @@ browsertime-tp6-essential:
- --conditioned-profile=settled
- --collect-perfstats
- --extra-profiler-run
- macosx1015.*:
- - --chimera
- - --browsertime-no-ffwindowrecorder
- - --conditioned-profile=settled
- - --extra-profiler-run
default:
- --chimera
- --conditioned-profile=settled
@@ -298,13 +279,6 @@ browsertime-tp6-bytecode:
- --conditioned-profile=settled
- --test-bytecode-cache
- --extra-profiler-run
- macosx1015.*:
- - --chimera
- - --browsertime
- - --browsertime-no-ffwindowrecorder
- - --conditioned-profile=settled
- - --test-bytecode-cache
- - --extra-profiler-run
default:
- --chimera
- --browsertime
@@ -317,6 +291,51 @@ browsertime-tp6-bytecode:
default: 3
treeherder-symbol: Btime-cache(tp6)
+browsertime-tp7:
+ <<: &tp7-defaults
+ description: Raptor (browsertime) tp7 page-load tests
+ limit-platforms:
+ by-app:
+ chrome:
+ - .*shippable.*
+ safari:
+ - .*macos.*shippable.*
+ custom-car:
+ - .*64.*shippable.*
+ default: []
+ max-run-time:
+ by-subtest:
+ imgur: 4800
+ default: 4000
+ mozharness:
+ extra-options:
+ by-test-platform:
+ windows10-64.*shippable.*-qr.*:
+ - --chimera
+ - --browsertime-no-ffwindowrecorder
+ - --conditioned-profile=settled
+ - --extra-profiler-run
+ default:
+ - --chimera
+ - --conditioned-profile=settled
+ - --extra-profiler-run
+ run-on-projects: []
+ treeherder-symbol: Btime(tp7)
+ raptor:
+ apps: [firefox, chrome]
+ test: tp7
+ run-visual-metrics: true
+ subtests:
+ - tiktok
+ - openai
+ - samsung
+ - weather
+ - docomo
+ tier:
+ by-app:
+ firefox: 3
+ default: 3
+
browsertime-benchmark:
description: Raptor (browsertime) Benchmark tests
raptor:
@@ -363,7 +382,7 @@ browsertime-benchmark:
# - [speedometer3, sp3] Perma fails on osx 10.15.x machines (Bug 1809535)
- [stylebench, sb]
- [sunspider, ss]
- - [unity-webgl, ugl]
+ # - [unity-webgl, ugl] Almost Perma failing on osx 10.15.x machines (Bug 1888398)
- [webaudio, wa]
custom-car:
- [speedometer, sp]
@@ -901,11 +920,6 @@ browsertime-tp6-webextensions:
- --browsertime
- --browsertime-no-ffwindowrecorder
- --conditioned-profile=settled-webext
- macosx1015.*:
- - --chimera
- - --browsertime-no-ffwindowrecorder
- - --conditioned-profile=settled
- - --extra-profiler-run
default:
- --chimera
- --browsertime
@@ -922,13 +936,11 @@ browsertime-indexeddb:
by-app:
chrome:
- .*shippable.*
- chromium:
- - .*shippable.*
custom-car:
- .*64.*shippable.*
default: []
raptor:
- apps: [firefox, chrome, chromium]
+ apps: [firefox, chrome]
run-visual-metrics: false
subtests:
- addMab1
diff --git a/taskcluster/ci/test/browsertime-mobile.yml b/taskcluster/ci/test/browsertime-mobile.yml
index 8e685a590e..0ef0c0519e 100644
--- a/taskcluster/ci/test/browsertime-mobile.yml
+++ b/taskcluster/ci/test/browsertime-mobile.yml
@@ -15,11 +15,11 @@ job-defaults:
fenix:
by-test-platform:
android-hw.*-aarch64.*/.*:
- index: mobile.v3.firefox-android.apks.fenix-nightly.latest.arm64-v8a
- name: build/target.arm64-v8a.apk
+ upstream-task: signing-apk
+ name: public/build/target.arm64-v8a.apk
default:
- index: mobile.v3.firefox-android.apks.fenix-nightly.latest.armeabi-v7a
- name: build/target.armeabi-v7a.apk
+ upstream-task: signing-apk
+ name: public/build/target.armeabi-v7a.apk
refbrow:
by-test-platform:
android-hw.*-aarch64.*/.*:
@@ -69,6 +69,11 @@ job-defaults:
default:
- linux64-minidump-stackwalk
- linux64-fix-stacks
+ dependencies:
+ by-app:
+ fenix:
+ signing-apk: signing-apk-fenix-nightly-simulation
+ default: {}
browsertime-tp6m:
<<: &tp6m-defaults
@@ -92,6 +97,7 @@ browsertime-tp6m:
tier:
by-app:
geckoview: 1
+ fenix: 2
refbrow: 2
default: 3
treeherder-symbol: Btime(tp6m)
@@ -142,6 +148,13 @@ browsertime-tp6m:
by-test-platform:
android-hw-a51.*shippable-qr.*: []
default: []
+ fenix:
+ by-variant:
+ geckoview-no-fission:
+ by-test-platform:
+ android-hw-a51.*shippable-qr.*: [trunk-only]
+ default: []
+ default: []
default: []
browsertime-tp6m-essential:
@@ -172,6 +185,10 @@ browsertime-tp6m-essential:
by-test-platform:
android-hw-a51.*shippable.*: [trunk-only]
default: []
+ fenix:
+ by-test-platform:
+ android-hw-a51.*shippable.*: [trunk-only]
+ default: []
default: []
tier:
by-app:
@@ -216,13 +233,24 @@ browsertime-youtube-playback-mobile:
raptor:
apps: [fenix, geckoview, refbrow]
subtests:
- by-test-platform:
- android-hw-a51.*:
- - [youtube-playback-h264-sfr, ytp-h264-sfr]
- - [youtube-playback-hfr, ytp-hfr]
- # Bug 1699469 - Disabled until a crash is fixed.
- # - [youtube-playback-widevine-h264-sfr, ytp-widevine-h264-sfr]
- # - [youtube-playback-widevine-hfr, ytp-widevine-hfr]
+ by-app:
+ fenix:
+ by-test-platform:
+ android-hw-a51.*:
+ - [youtube-playback-av1-sfr, ytp-av1-sfr]
+ - [youtube-playback-hfr, ytp-hfr]
+ - [youtube-playback-vp9-sfr, ytp-vp9-sfr]
+ # Bug 1699469 - Disabled until a crash is fixed.
+ # - [youtube-playback-widevine-h264-sfr, ytp-widevine-h264-sfr]
+ # - [youtube-playback-widevine-hfr, ytp-widevine-hfr]
+ default:
+ by-test-platform:
+ android-hw-a51.*:
+ - [youtube-playback-h264-sfr, ytp-h264-sfr]
+ - [youtube-playback-hfr, ytp-hfr]
+ # Bug 1699469 - Disabled until a crash is fixed.
+ # - [youtube-playback-widevine-h264-sfr, ytp-widevine-h264-sfr]
+ # - [youtube-playback-widevine-hfr, ytp-widevine-hfr]
test-url-param:
by-subtest:
youtube-playback-h264-sfr: # remove high resolution tests
@@ -244,6 +272,10 @@ browsertime-youtube-playback-mobile:
default: ""
run-on-projects:
by-app:
+ fenix:
+ by-test-platform:
+ android-hw-a51.*shippable.*: [mozilla-central]
+ default: []
geckoview:
by-test-platform:
android-hw-a51.*shippable.*: [mozilla-central]
@@ -347,7 +379,10 @@ browsertime-benchmark-speedometer-mobile:
default: 3
run-on-projects:
by-app:
- refbrow: []
+ fenix:
+ by-test-platform:
+ android-hw-a51.*shippable-qr.*: [trunk]
+ default: []
geckoview:
by-test-platform:
android-hw-a51.*shippable-qr.*: [trunk]
@@ -375,10 +410,17 @@ browsertime-benchmark-speedometer3-mobile:
default: 3
run-on-projects:
by-app:
- refbrow: []
+ fenix:
+ by-test-platform:
+ android-hw-a51.*shippable-qr.*: [trunk-only]
+ android-hw-p6.*shippable-qr.*: [mozilla-central]
+ android-hw-s21.*shippable-qr.*: [mozilla-central]
+ default: []
geckoview:
by-test-platform:
android-hw-a51.*shippable-qr.*: [trunk-only]
+ android-hw-p6.*shippable-qr.*: [mozilla-central]
+ android-hw-s21.*shippable-qr.*: [mozilla-central]
default: []
cstm-car-m: [mozilla-central]
chrome-m:
diff --git a/taskcluster/ci/test/compiled.yml b/taskcluster/ci/test/compiled.yml
index 08434d5ac7..ebe6b9bb2b 100644
--- a/taskcluster/ci/test/compiled.yml
+++ b/taskcluster/ci/test/compiled.yml
@@ -49,7 +49,7 @@ gtest:
description: "GTests run"
suite: gtest
treeherder-symbol: GTest
- instance-size: xlarge
+ instance-size: xlarge-noscratch
run-on-projects:
by-variant:
1proc:
@@ -81,17 +81,17 @@ jittest:
default: []
chunks:
by-test-platform:
- windows.*-ccov-qr/opt: 8
+ windows.*-ccov-qr/opt: 6
windows.*: 1
macosx.*/opt: 1
macosx.*/debug: 3
- android.*: 10
+ android.*/opt: 3
+ android-hw-.*-aarch64-qr/debug: 8
default: 6
max-run-time:
by-test-platform:
- windows.*-ccov.*/.*: 7200
- macosx.*-ccov.*/.*: 7200
- android-hw.*: 5400
+ windows.*-ccov.*/.*: 1800
+ android-hw.*: 2400
default: 3600
mozharness:
chunked:
@@ -116,7 +116,10 @@ jittest-all:
by-test-platform:
android-hw-.*-arm7(?:-shippable)?-qr/.*: ['mozilla-central', 'release']
default: []
- chunks: 10
+ chunks:
+ by-test-platform:
+ android-.*/opt: 3
+ android-.*/debug: 6
max-run-time: 3600
mozharness:
chunked: true
diff --git a/taskcluster/ci/test/kind.yml b/taskcluster/ci/test/kind.yml
index 514fb648c4..e9c2b1e5e9 100644
--- a/taskcluster/ci/test/kind.yml
+++ b/taskcluster/ci/test/kind.yml
@@ -7,6 +7,7 @@ loader: gecko_taskgraph.loader.test:loader
kind-dependencies:
- build
- build-signing
+ - signing-apk
- repackage-signing-shippable-l10n-msix
- repackage-signing-msix
- repackage-signing
@@ -45,6 +46,7 @@ jobs-from:
job-defaults:
attributes:
retrigger: true
+ use-python: default
require-signed-extensions:
by-release-type:
release|esr.*: true
@@ -83,6 +85,11 @@ job-defaults:
- android-emulator-linux
- linux64-minidump-stackwalk
- linux64-fix-stacks
+ - linux64-hostutils
+ android-hw.*:
+ - linux64-minidump-stackwalk
+ - linux64-fix-stacks
+ - linux64-hostutils
default:
- linux64-minidump-stackwalk
- linux64-fix-stacks
diff --git a/taskcluster/ci/test/misc.yml b/taskcluster/ci/test/misc.yml
index ba6fd7aec8..8f1f93157c 100644
--- a/taskcluster/ci/test/misc.yml
+++ b/taskcluster/ci/test/misc.yml
@@ -128,6 +128,7 @@ test-verify:
- linux64-node
- linux64-minidump-stackwalk
- linux64-fix-stacks
+ - linux64-hostutils
test-verify-gpu:
description: "Extra verification of tests modified on this push on gpu instances"
@@ -229,6 +230,7 @@ test-coverage:
- linux64-node
- linux64-minidump-stackwalk
- linux64-fix-stacks
+ - linux64-hostutils
test-coverage-gpu:
description: "Per-test coverage for tests that require gpu instances"
diff --git a/taskcluster/ci/test/mochitest.yml b/taskcluster/ci/test/mochitest.yml
index afe9530364..1339652baf 100644
--- a/taskcluster/ci/test/mochitest.yml
+++ b/taskcluster/ci/test/mochitest.yml
@@ -58,13 +58,11 @@ mochitest-plain:
- xorigin
- no-fission
- socketprocess_networking
- - webrender-sw+no-fission
- - webrender-sw
- headless
- - headless+socketprocess_networking
- http3
- http2
- geckoview-fission-isolate-high-value
+ - geckoview-no-fission-ship
run-on-projects:
by-variant:
conditioned_profile:
@@ -86,17 +84,7 @@ mochitest-plain:
socketprocess_networking:
by-test-platform:
.*(asan|ccov|wayland).*: []
- (linux.*64|macosx.*64|windows11-64.*)(-shippable)?-qr/(opt|debug): ['autoland', 'mozilla-central']
- default: []
- webrender-sw+no-fission:
- by-test-platform:
- android-em-7.0-x86_64-qr/debug: built-projects
- linux.*asan.*: ['trunk']
- linux.*64(-shippable)?-qr/(opt|debug): ['trunk']
- default: []
- webrender-sw:
- by-test-platform:
- linux1804-64-qr/debug: built-projects
+ linux.*64.*(-shippable)?-qr/debug: ['autoland', 'mozilla-central']
default: []
aab+no-fission:
by-test-platform:
@@ -107,17 +95,12 @@ mochitest-plain:
.*wayland.*: []
linux1804-64.*: ['mozilla-central']
default: []
- headless+socketprocess_networking:
- by-test-platform:
- .*wayland.*: []
- linux1804-64.*: ['mozilla-central']
- default: []
no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug-isolated-process: []
android.*: built-projects
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
default: []
http3:
by-test-platform:
@@ -132,6 +115,11 @@ mochitest-plain:
android-em-7.0-x86_64-qr/debug-isolated-process: []
android-em.*: built-projects
default: []
+ geckoview-no-fission-ship:
+ by-test-platform:
+ android-em-7.0-x86_64-qr/debug-isolated-process: []
+ android-em.*: built-projects
+ default: []
default:
by-test-platform:
android-em-7.0-x86_64-qr/debug-isolated-process: []
@@ -146,9 +134,16 @@ mochitest-plain:
linux.*/opt: 8
windows.*/debug: 8
default: 5
+ tier:
+ by-variant:
+ no-fission:
+ by-test-platform:
+ linux.*64.*: 2
+ default: default
+ default: default
instance-size:
by-test-platform:
- linux.*64-tsan-qr/opt: xlarge # runs out of memory using 8GB
+ linux.*64-tsan-qr/opt: xlarge-noscratch # runs out of memory using 8GB
default: default
max-run-time: 3600
allow-software-gl-layers: false
@@ -188,6 +183,7 @@ mochitest-plain:
- android-emulator-linux
- linux64-node
- linux64-minidump-stackwalk
+ - linux64-hostutils
mochitest-a11y:
description: "Mochitest a11y run"
@@ -236,7 +232,6 @@ mochitest-browser-chrome:
linux.*64-shippable-qr/opt: ['release']
linux.*64(-shippable)?-qr/opt: built-projects
linux.*64-devedition-qr/opt: built-projects
- windows1.*-64.*-qr/debug: built-projects
.*wayland.*: [] # will change to built-projects when greened up
default: []
webrender-sw+a11y-checks:
@@ -305,11 +300,9 @@ mochitest-browser-chrome:
mozharness:
mochitest-flavor: browser
chunked: true
- # Bug 1281241: migrating to m3.large instances
instance-size:
by-test-platform:
- linux.*64-tsan-qr/opt: xlarge # runs out of memory using 8GB
- linux.*64-asan-qr/opt: xlarge # runs out of memory using 8GB
+ linux.*64-asan-qr/opt: xlarge # runs out of memory frequently
default: default
allow-software-gl-layers: false
@@ -444,7 +437,7 @@ mochitest-chrome:
by-test-platform:
.*asan.*: []
.*ccov.*: []
- (linux.*64|macosx.*64|windows11-64.*)(-shippable)?-qr/(opt|debug): ['autoland', 'mozilla-central']
+ linux.*64.*(-shippable)?-qr/debug: ['autoland', 'mozilla-central']
default: []
webrender-sw+1proc:
by-test-platform:
@@ -465,7 +458,7 @@ mochitest-chrome:
chunked: true
instance-size:
by-test-platform:
- linux.*64-tsan-qr/opt: xlarge # runs out of memory otherwise using 8GB
+ linux.*64-tsan-qr/opt: xlarge-noscratch # runs out of memory otherwise using 8GB
default: default
mochitest-devtools-chrome:
@@ -478,8 +471,6 @@ mochitest-devtools-chrome:
variants:
- a11y-checks
- socketprocess_networking
- - webrender-sw
- - devtools-no-eft+no-fission
- http3
run-on-projects:
by-variant:
@@ -487,10 +478,6 @@ mochitest-devtools-chrome:
by-test-platform:
linux.*64(-shippable)?-qr/opt: ['trunk']
default: []
- devtools-no-eft+no-fission:
- by-test-platform:
- linux.*64(-shippable)?-qr/opt: ['trunk']
- default: []
http3:
by-test-platform:
linux1804-64-qr/debug: built-projects
@@ -499,12 +486,7 @@ mochitest-devtools-chrome:
by-test-platform:
.*asan.*: []
.*ccov.*: []
- (linux.*64|macosx.*64|windows.*)(-shippable)?-qr/(opt|debug): ['autoland', 'mozilla-central']
- default: []
- webrender-sw:
- by-test-platform:
- linux.*64-qr/debug: built-projects
- .*wayland.*: [] # will change to built-projects when greened up
+ linux.*64.*(-shippable)?-qr/debug: ['autoland', 'mozilla-central']
default: []
default:
by-test-platform:
@@ -534,7 +516,7 @@ mochitest-devtools-chrome:
chunked: true
instance-size:
by-test-platform:
- linux.*64-[at]san(-qr)?/opt: xlarge # runs out of memory otherwise using 8GB
+ linux.*64-[at]san(-qr)?/opt: xlarge-noscratch # runs out of memory otherwise using 8GB
default: default
# Bug 1296086: high number of intermittents observed with software GL and large instances
allow-software-gl-layers: false
@@ -563,6 +545,7 @@ mochitest-devtools-chrome:
- android-emulator-linux
- linux64-node
- linux64-minidump-stackwalk
+ - linux64-hostutils
mochitest-devtools-chrome-failures:
@@ -615,8 +598,8 @@ mochitest-plain-gpu:
webrender-sw+no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug: built-projects
- linux.*asan.*: ['trunk']
- linux.*64(-shippable)?-qr/(opt|debug): ['trunk']
+ linux.*asan.*: ['mozilla-central']
+ linux.*64(-shippable)?-qr/(opt|debug): ['mozilla-central']
default: []
webrender-sw:
by-test-platform:
@@ -629,7 +612,7 @@ mochitest-plain-gpu:
linux1804-32.*: []
.*-tsan-qr/opt: []
.*wayland.*: []
- linux.*: ['trunk'] # linux opt/debug/asan
+ linux.*: ['mozilla-central'] # linux opt/debug/asan
android.*: built-projects
default: []
default:
@@ -638,9 +621,15 @@ mochitest-plain-gpu:
default: built-projects
virtualization: virtual-with-gpu
tier:
- by-test-platform:
- android-em-7.0-x86_64-qr/debug-isolated-process: 3
- default: default
+ by-variant:
+ no-fission:
+ by-test-platform:
+ linux.*64.*: 2
+ default: default
+ default:
+ by-test-platform:
+ android-em-7.0-x86_64-qr/debug-isolated-process: 3
+ default: default
mozharness:
mochitest-flavor: plain
extra-options:
@@ -652,7 +641,7 @@ mochitest-plain-gpu:
- --mochitest-suite=mochitest-plain-gpu
instance-size:
by-test-platform:
- linux.*64-tsan-qr/opt: xlarge # runs out of memory otherwise using 8GB
+ linux.*64-tsan-qr/opt: xlarge-noscratch # runs out of memory otherwise using 8GB
default: default
mochitest-chrome-gpu:
@@ -691,7 +680,7 @@ mochitest-chrome-gpu:
- --mochitest-suite=mochitest-chrome-gpu
instance-size:
by-test-platform:
- linux.*64-tsan-qr/opt: xlarge # runs out of memory using 8GB of memory
+ linux.*64-tsan-qr/opt: xlarge-noscratch # runs out of memory using 8GB of memory
default: default
mochitest-media:
@@ -731,8 +720,8 @@ mochitest-media:
.*hw-ref.*: []
android-em-7.0-x86_64-qr/debug: ['autoland', 'mozilla-central']
android-hw-.*-aarch64-qr/debug: built-projects
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
default: []
socketprocess:
by-test-platform:
@@ -749,8 +738,8 @@ mochitest-media:
by-test-platform:
.*hw-ref.*: []
android-em-7.0-x86_64-qr/debug: ['autoland', 'mozilla-central']
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
default: []
webrender-sw:
by-test-platform:
@@ -765,8 +754,8 @@ mochitest-media:
android-hw-.*-arm7.*/(?:debug)?: ['trunk', 'mozilla-beta', 'mozilla-release']
android-em-7.0-x86_64-qr/debug-isolated-process: []
android.*: built-projects
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
default: []
wmf-media-engine:
by-test-platform:
@@ -828,12 +817,26 @@ mochitest-media:
- --setpref=webgl.out-of-process=false
- --setpref=security.sandbox.content.headless=false
tier:
- by-test-platform:
- .*ccov.*: 2
- android-em.*: 1
- android-em-7.0-x86_64-qr/debug-isolated-process: 3
- android-hw.*: 1
- default: default
+ by-variant:
+ no-fission:
+ by-test-platform:
+ linux.*64.*: 2
+ default: default
+ webrender-sw+no-fission:
+ by-test-platform:
+ linux.*64.*: 2
+ default: default
+ socketprocess+no-fission:
+ by-test-platform:
+ linux.*64.*: 2
+ default: default
+ default:
+ by-test-platform:
+ .*ccov.*: 2
+ android-em.*: 1
+ android-em-7.0-x86_64-qr/debug-isolated-process: 3
+ android-hw.*: 1
+ default: default
mochitest-valgrind:
description: "Mochitest plain Valgrind run"
@@ -1112,7 +1115,6 @@ mochitest-webgpu:
default:
by-test-platform:
android.*: []
- macosx.*: []
# Things like asan/tsan/32bit are restricted to --full
# via UNCOMMON_TRY_TASK_LABELS
# in taskcluster/gecko_taskgraph/target_tasks.py.
@@ -1121,10 +1123,13 @@ mochitest-webgpu:
by-test-platform:
macosx.*64-ccov.*/.*: 7200
default: 1800
- # Bug 1296733: llvmpipe with mesa 9.2.1 lacks thread safety
- allow-software-gl-layers: false
mozharness:
mochitest-flavor: plain
+ extra-options:
+ by-test-platform:
+ macos.*:
+ - --setpref=gfx.webgpu.ignore-blocklist=true
+ default: []
mochitest-remote:
description: "Mochitest for the remote agent (/remote folder)"
@@ -1135,23 +1140,13 @@ mochitest-remote:
variants:
- no-fission
- socketprocess_networking
- - webrender-sw+no-fission
- - webrender-sw
run-on-projects:
by-variant:
socketprocess_networking:
by-test-platform:
.*asan.*: []
.*ccov.*: []
- (linux.*64|macosx.*64|windows1.*-64.*)(-shippable)?-qr/(opt|debug): ['autoland', 'mozilla-central']
- default: []
- webrender-sw+no-fission:
- by-test-platform:
- linux.*64-qr/debug: ['trunk']
- default: []
- webrender-sw:
- by-test-platform:
- linux.*64-qr/debug: ['all']
+ linux.*64.*(-shippable)?-qr/debug: ['autoland', 'mozilla-central']
default: []
no-fission:
by-test-platform:
diff --git a/taskcluster/ci/test/reftest.yml b/taskcluster/ci/test/reftest.yml
index 5e19ec3fd5..21474f7aad 100644
--- a/taskcluster/ci/test/reftest.yml
+++ b/taskcluster/ci/test/reftest.yml
@@ -41,7 +41,7 @@ crashtest:
chunks:
by-test-platform:
android-em-7.*: 1
- linux.*64-tsan-qr/opt: 32
+ linux.*64-tsan-qr/opt: 4
default: 1
variants:
- no-fission
@@ -52,8 +52,8 @@ crashtest:
webrender-sw+no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug: built-projects
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
default: []
webrender-sw:
by-test-platform:
@@ -66,8 +66,8 @@ crashtest:
no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug-isolated-process: []
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
android.*: built-projects
default: []
default:
@@ -77,10 +77,20 @@ crashtest:
default: built-projects
max-run-time: 3600
tier:
- by-test-platform:
- android-hw-.*-qr/.*: 2
- android-em-7.0-x86_64-qr/debug-isolated-process: 3
- default: default
+ by-variant:
+ no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ webrender-sw+no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ default:
+ by-test-platform:
+ android-hw-.*-qr/.*: 2
+ android-em-7.0-x86_64-qr/debug-isolated-process: 3
+ default: default
crashtest-qr:
description: "Crashtest Webrender run"
@@ -127,8 +137,8 @@ jsreftest:
by-variant:
no-fission:
by-test-platform:
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
android-hw-.*-aarch64(?:-shippable)?-qr/.*: ['mozilla-central', 'release']
android-hw-.*-arm7(?:-shippable)?-qr/.*: ['mozilla-central', 'release']
android.*: built-projects
@@ -138,6 +148,13 @@ jsreftest:
android.*/.*: []
default: built-projects
virtualization: virtual
+ tier:
+ by-variant:
+ no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ default: default
reftest:
description: "Reftest run"
@@ -147,7 +164,7 @@ reftest:
by-test-platform:
android-em-7.*: 6
linux1804-64(-shippable|-devedition|-qr)?/opt: 5
- linux.*64-tsan-qr/opt: 32
+ linux.*64-tsan-qr/opt: 16
macosx101.*-64-shippable(-qr)?/opt: 3
macosx101.*-64/debug: 4
macosx101.*-64(-ccov.*|-qr)/debug: 6
@@ -159,6 +176,7 @@ reftest:
windows11.*/opt: 3
default: 8
variants:
+ - geckoview-no-fission-ship
- no-fission
- webrender-dcomp-disabled
- webrender-dcomp-present
@@ -171,8 +189,8 @@ reftest:
webrender-sw+no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug: built-projects
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
default: []
webrender-sw:
by-test-platform:
@@ -184,10 +202,15 @@ reftest:
no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug-isolated-process: []
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
android.*: built-projects
default: []
+ geckoview-no-fission-ship:
+ by-test-platform:
+ android-em-7.0-x86_64-qr/debug-isolated-process: []
+ android-em.*: built-projects
+ default: []
default:
by-test-platform:
android.*/.*: []
@@ -209,9 +232,19 @@ reftest:
windows.*/opt: false
default: true
tier:
- by-test-platform:
- android-em-7.0-x86_64-qr/debug-isolated-process: 3
- default: default
+ by-variant:
+ no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ webrender-sw+no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ default:
+ by-test-platform:
+ android-em-7.0-x86_64-qr/debug-isolated-process: 3
+ default: default
reftest-qr:
description: "Reftest webrender run"
diff --git a/taskcluster/ci/test/talos.yml b/taskcluster/ci/test/talos.yml
index 28da3b47f4..3ce85fd039 100644
--- a/taskcluster/ci/test/talos.yml
+++ b/taskcluster/ci/test/talos.yml
@@ -694,7 +694,7 @@ talos-webgl:
mozharness:
extra-options:
by-test-platform:
- windows(10-64-ref-hw|11-64-2009-hw-ref).*:
+ windows11-64-2009-hw-ref.*:
- --suite=webgl
- --skip-preflight
default:
@@ -777,3 +777,41 @@ talos-realworld-webextensions-profiling:
extra-options:
- --suite=realworld-webextensions
- --gecko-profile
+
+talos-pdfpaint:
+ description: Talos pdfpaint
+ try-name: pdfpaint
+ treeherder-symbol: T(pdfpaint)
+ variants:
+ - webrender-sw
+ run-on-projects:
+ by-variant:
+ webrender-sw:
+ by-test-platform:
+ (linux1804|windows10|macosx1015)-64-shippable-qr.*: [trunk]
+ default: []
+ default:
+ by-test-platform:
+ windows.*-32-shippable.*/.*: []
+ (linux|windows|macos)(?!.*shippable).*: []
+ (linux|windows10-64|macos)(?!.*-qr).*: []
+ default: [trunk]
+ max-run-time: 1800
+ mozharness:
+ extra-options:
+ - --suite=pdfpaint
+ fetches:
+ toolchain:
+ by-test-platform:
+ win.*:
+ - win32-minidump-stackwalk
+ - win32-fix-stacks
+ - talos-pdfs
+ macosx1015.*:
+ - macosx64-minidump-stackwalk
+ - macosx64-fix-stacks
+ - talos-pdfs
+ default:
+ - linux64-minidump-stackwalk
+ - linux64-fix-stacks
+ - talos-pdfs
diff --git a/taskcluster/ci/test/test-platforms.yml b/taskcluster/ci/test/test-platforms.yml
index 0f124e0878..b957b8a4db 100644
--- a/taskcluster/ci/test/test-platforms.yml
+++ b/taskcluster/ci/test/test-platforms.yml
@@ -43,7 +43,6 @@ linux1804-64-qr/opt:
- awsy
- desktop-screenshot-capture
- linux1804-tests
- - mochitest-webgpu
- web-platform-tests
- web-platform-tests-backlog
- talos
@@ -55,7 +54,6 @@ linux1804-64-shippable-qr/opt:
- awsy
- desktop-screenshot-capture
- linux1804-tests
- - mochitest-webgpu
- web-platform-tests
- web-platform-tests-backlog
- talos
@@ -72,21 +70,18 @@ linux1804-64-qr/debug:
build-platform: linux64/debug
test-sets:
- linux1804-tests
- - mochitest-webgpu
- web-platform-tests
linux1804-64-asan-qr/opt:
build-platform: linux64-asan/opt
test-sets:
- linux1804-tests
- - mochitest-webgpu
- web-platform-tests
linux1804-64-tsan-qr/opt:
build-platform: linux64-tsan/opt
test-sets:
- linux1804-tests
- - mochitest-webgpu
- web-platform-tests
linux1804-64-ccov-qr/opt:
@@ -95,7 +90,6 @@ linux1804-64-ccov-qr/opt:
- ccov-code-coverage-tests
- linux1804-tests
- linux1804-ccov-tests
- - mochitest-webgpu
- web-platform-tests
linux1804-64-devedition-qr/opt:
@@ -116,18 +110,21 @@ linux2204-64-wayland/debug:
test-sets:
- linux2204-wayland-tests
- web-platform-tests
+ - webgpu
linux2204-64-wayland/opt:
build-platform: linux64/opt
test-sets:
- linux2204-wayland-tests
- web-platform-tests
+ - webgpu
linux2204-64-wayland-shippable/opt:
build-platform: linux64-shippable/opt
test-sets:
- linux2204-wayland-tests
- web-platform-tests
+ - webgpu
##
# Windows platforms (matching /windows.*/)
@@ -191,11 +188,6 @@ windows10-64-qr/opt:
- windows-talos
- browsertime
-windows10-64-ref-hw-2017-qr/opt:
- build-platform: win64-shippable/opt
- test-sets:
- - talos-ref-hw
-
windows11-64-2009-hw-ref-shippable/opt:
build-platform: win64-shippable/opt
build-signing-label:
@@ -274,6 +266,7 @@ windows11-64-2009-qr/debug:
default: build-signing-win64/debug
test-sets:
- web-platform-tests
+ - webgpu
- windows11-2009-tests
windows11-64-2009-qr/opt:
@@ -287,6 +280,7 @@ windows11-64-2009-qr/opt:
- desktop-screenshot-capture
- web-platform-tests
- web-platform-tests-backlog
+ - webgpu
- windows11-2009-tests
- talos-xperf
@@ -364,6 +358,7 @@ macosx1015-64-shippable-qr/opt:
- talos-profiling
- web-platform-tests
- web-platform-tests-backlog
+ - webgpu
macosx1015-64-nightlyasrelease-qr/opt:
build-platform: macosx64-nightlyasrelease/opt
@@ -375,6 +370,7 @@ macosx1015-64-devedition-qr/opt:
test-sets:
- macosx1015-64-qr-tests
- web-platform-tests
+ - webgpu
macosx1015-64-qr/opt:
build-platform: macosx64/opt
@@ -383,6 +379,7 @@ macosx1015-64-qr/opt:
- macosx1015-64-qr-tests
- web-platform-tests
- web-platform-tests-backlog
+ - webgpu
- browsertime
macosx1015-64-qr/debug:
@@ -390,6 +387,7 @@ macosx1015-64-qr/debug:
test-sets:
- macosx1015-64-qr-tests
- web-platform-tests
+ - webgpu
macosx1015-64-ccov-qr/opt:
build-platform: macosx64-ccov/opt
diff --git a/taskcluster/ci/test/test-sets.yml b/taskcluster/ci/test/test-sets.yml
index 16807b5b9e..4a8f3d019b 100644
--- a/taskcluster/ci/test/test-sets.yml
+++ b/taskcluster/ci/test/test-sets.yml
@@ -15,6 +15,10 @@
### Feature-specific test groups
+webgpu:
+ - mochitest-webgpu
+ - web-platform-tests-webgpu
+
web-platform-tests:
- web-platform-tests
- web-platform-tests-crashtest
@@ -22,7 +26,6 @@ web-platform-tests:
- web-platform-tests-print-reftest
- web-platform-tests-reftest
- web-platform-tests-wdspec
- - web-platform-tests-webgpu
- web-platform-tests-canvas
web-platform-tests-backlog:
@@ -32,9 +35,6 @@ web-platform-tests-backlog:
mochitest-devtools-chrome:
- mochitest-devtools-chrome
-mochitest-webgpu:
- - mochitest-webgpu
-
talos:
- talos-bcv
- talos-chrome
@@ -55,6 +55,7 @@ talos:
- talos-tabswitch
- talos-realworld-webextensions
- talos-webgl
+ - talos-pdfpaint
# - talos-h1 Bug 1487031 - Disabled for not finding actionable regressions
# - talos-h2 Bug 1487031 - Disabled for not finding actionable regressions
@@ -83,6 +84,7 @@ talos-ref-hw:
browsertime:
- browsertime-tp6
+ - browsertime-tp7
- browsertime-tp6-essential
- browsertime-tp6-bytecode
- browsertime-tp6-live
@@ -235,7 +237,6 @@ windows32-2009-tests:
- mochitest-plain
- mochitest-plain-gpu
- mochitest-remote
- - mochitest-webgpu
- reftest
- telemetry-tests-client
- test-verify
@@ -279,7 +280,6 @@ windows11-2009-tests:
- mochitest-plain
- mochitest-plain-gpu
- mochitest-remote
- - mochitest-webgpu
- mochitest-webgl1-core
- mochitest-webgl1-ext
- mochitest-webgl2-core
@@ -301,7 +301,6 @@ mingwclang-tests-debug:
- mochitest-webgl1-ext
- mochitest-webgl2-core
- mochitest-webgl2-ext
- - mochitest-webgpu
- reftest
- telemetry-tests-client
@@ -318,7 +317,6 @@ mingwclang-win32-tests-debug:
- mochitest-webgl1-ext
- mochitest-webgl2-core
- mochitest-webgl2-ext
- - mochitest-webgpu
# - reftest - disabled, see bug 1642719
- telemetry-tests-client
@@ -346,6 +344,7 @@ windows-talos:
- talos-tabswitch
- talos-realworld-webextensions
- talos-webgl
+ - talos-pdfpaint
# - talos-h1 Bug 1487031 - Disabled for not finding actionable regressions
windows-ref-hw-tests:
@@ -366,7 +365,6 @@ macosx1100-64-qr-tests:
- mochitest-browser-media
- mochitest-chrome-gpu
- mochitest-media
- - mochitest-webgpu
- mochitest-webgl1-core
- mochitest-webgl1-ext
- mochitest-webgl2-core
@@ -400,7 +398,6 @@ macosx1015-64-qr-tests:
- mochitest-webgl1-ext
- mochitest-webgl2-core
- mochitest-webgl2-ext
- - mochitest-webgpu
- reftest
- telemetry-tests-client
- test-verify
@@ -427,6 +424,7 @@ macosx64-talos:
- talos-realworld-webextensions
- talos-webgl
- talos-tabswitch
+ - talos-pdfpaint
# - talos-h1 # too long to unpack profile- Bug 1442893
macosx1400-64-qr-tests:
diff --git a/taskcluster/ci/test/variants.yml b/taskcluster/ci/test/variants.yml
index c57a332a91..8cb31ee047 100644
--- a/taskcluster/ci/test/variants.yml
+++ b/taskcluster/ci/test/variants.yml
@@ -77,6 +77,7 @@ aab:
- linux64-minidump-stackwalk
- linux64-fix-stacks
- linux64-jdk
+ - linux64-hostutils
replace:
target: "geckoview-test_runner.aab"
@@ -297,7 +298,7 @@ webrender-dcomp-compositing:
webrender-sw:
description: "{description} with software webrender enabled"
component: "Core::Graphics: WebRender"
- expiration: "2024-09-01"
+ expiration: "never"
suffix: "swr"
mozinfo: "swgl"
merge:
@@ -317,27 +318,6 @@ webgl-ipc:
- "--setpref=webgl.out-of-process=true"
- "--setpref=security.sandbox.content.headless=true"
-devtools-no-eft:
- description: "{description} with DevTools EFT disabled"
- component: "DevTools::Framework"
- expiration: "2024-03-01"
- suffix: "dt-no-eft"
- when:
- $eval: '
- "linux" in task["test-platform"]
- && "opt" in task["test-platform"]
- && "mochitest-devtools-chrome" == task["try-name"]
- && !(
- "asan" in task["test-platform"]
- || "tsan" in task["test-platform"]
- || "ccov" in task["test-platform"]
- )
- '
- merge:
- mozharness:
- extra-options:
- - "--setpref=devtools.every-frame-target.enabled=false"
-
wmf-media-engine:
description: "{description} with Windows Media Foundation media engine enabled"
component: "Core::Audio/Video: Playback"
diff --git a/taskcluster/ci/test/web-platform.yml b/taskcluster/ci/test/web-platform.yml
index 4ef9721fe6..4a1818cbd6 100644
--- a/taskcluster/ci/test/web-platform.yml
+++ b/taskcluster/ci/test/web-platform.yml
@@ -5,7 +5,7 @@
job-defaults:
suite:
category: web-platform-tests
- instance-size: xlarge
+ instance-size: xlarge-noscratch
max-run-time:
by-test-platform:
android-em-7.0-x86_64/debug: 7200
@@ -37,9 +37,15 @@ web-platform-tests:
treeherder-symbol: W(wpt)
virtualization: virtual
tier:
- by-test-platform:
- android-em-7.0-x86_64-qr/debug-isolated-process: 3
- default: default
+ by-variant:
+ no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ default:
+ by-test-platform:
+ android-em-7.0-x86_64-qr/debug-isolated-process: 3
+ default: default
chunks:
by-test-platform:
android.*/debug: 32
@@ -63,29 +69,14 @@ web-platform-tests:
default: 7200
variants:
- no-fission
- - webrender-sw+no-fission
- - webrender-sw
run-on-projects:
by-variant:
- webrender-sw:
- by-test-platform:
- .*-32.*/.*: []
- linux.*64-qr/debug: built-projects
- windows.*-qr/debug: built-projects
- android-em-7.0-x86_64-qr/debug: []
- default: []
- webrender-sw+no-fission:
- by-test-platform:
- .*-32.*/.*: []
- android-em-7.0-x86_64-qr/debug: built-projects
- linux.*64-qr/debug: built-projects
- default: []
no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug-isolated-process: []
android.*: built-projects
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
default: []
default:
by-test-platform:
@@ -198,14 +189,14 @@ web-platform-tests-reftest:
webrender-sw+no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug: built-projects
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
default: []
no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug-isolated-process: []
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
android.*: built-projects
default: []
default:
@@ -214,9 +205,15 @@ web-platform-tests-reftest:
.*wayland.*: []
default: built-projects
tier:
- by-test-platform:
- android-em-7.0-x86_64-qr/debug-isolated-process: 3
- default: default
+ by-variant:
+ no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ default:
+ by-test-platform:
+ android-em-7.0-x86_64-qr/debug-isolated-process: 3
+ default: default
mozharness:
extra-options:
- --test-type=reftest
@@ -232,7 +229,6 @@ web-platform-tests-webgpu:
virtualization: virtual-with-gpu
tier:
by-test-platform:
- .*-32.*/.*: 3
android.*: 3 # https://bugzilla.mozilla.org/show_bug.cgi?id=1849914
macos.*: 3 # https://bugzilla.mozilla.org/show_bug.cgi?id=1849913
linux2204.*-64.*: 3 # https://bugzilla.mozilla.org/show_bug.cgi?id=1849912
@@ -257,8 +253,7 @@ web-platform-tests-webgpu:
variants: [] # We don't need sw or nofis testing.
run-on-projects:
by-test-platform:
- android.*: [] # Out of scope
- linux1804.*: [] # We don't support anything less than Mesa Lavapipe 22.1.2, so this is _out_.
+ android.*: [] # https://bugzilla.mozilla.org/show_bug.cgi?id=1836811
.*-wayland/debug.*: [] # https://bugzilla.mozilla.org/show_bug.cgi?id=1864700
default: ['mozilla-central']
mozharness:
@@ -283,9 +278,15 @@ web-platform-tests-canvas:
treeherder-symbol: W(canvas)
virtualization: virtual-with-gpu
tier:
- by-test-platform:
- android-em-7.0-x86_64-qr/debug-isolated-process: 3
- default: default
+ by-variant:
+ no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ default:
+ by-test-platform:
+ android-em-7.0-x86_64-qr/debug-isolated-process: 3
+ default: default
chunks:
by-test-platform:
windows.*: 2
@@ -299,29 +300,14 @@ web-platform-tests-canvas:
default: 1800
variants:
- no-fission
- - webrender-sw+no-fission
- - webrender-sw
run-on-projects:
by-variant:
- webrender-sw:
- by-test-platform:
- .*-32.*/.*: []
- linux.*64-qr/debug: built-projects
- windows.*-qr/debug: built-projects
- android-em-7.0-x86_64-qr/debug: []
- default: []
- webrender-sw+no-fission:
- by-test-platform:
- .*-32.*/.*: []
- android-em-7.0-x86_64-qr/debug: built-projects
- linux.*64-qr/debug: built-projects
- default: []
no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug-isolated-process: []
android.*: built-projects
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
default: []
default:
by-test-platform:
@@ -391,24 +377,9 @@ web-platform-tests-wdspec:
- --test-type=wdspec
variants:
- no-fission
- - webrender-sw+no-fission
- - webrender-sw
- headless
run-on-projects:
by-variant:
- webrender-sw+no-fission:
- by-test-platform:
- android-em-7.0-x86_64-qr/debug: built-projects
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
- default: []
- webrender-sw:
- by-test-platform:
- android-em-7.0-x86_64-qr/debug: []
- .*-32.*/.*: []
- linux.*64-qr/debug: built-projects
- windows.*-qr/debug: built-projects
- default: []
headless:
by-test-platform:
android.*: []
@@ -416,8 +387,8 @@ web-platform-tests-wdspec:
default: built-projects
no-fission:
by-test-platform:
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
android.*: built-projects
default: []
default:
@@ -425,7 +396,13 @@ web-platform-tests-wdspec:
android.*: []
.*wayland.*: []
default: built-projects
- tier: default
+ tier:
+ by-variant:
+ no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ default: default
fetches:
toolchain:
by-test-platform:
@@ -436,6 +413,7 @@ web-platform-tests-wdspec:
- linux64-geckodriver
- linux64-minidump-stackwalk
- linux64-fix-stacks
+ - linux64-hostutils
linux.*64.*:
- linux64-geckodriver
- linux64-minidump-stackwalk
@@ -486,14 +464,14 @@ web-platform-tests-crashtest:
webrender-sw+no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug: built-projects
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
default: []
no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug-isolated-process: []
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
android.*: built-projects
default: []
default:
@@ -501,7 +479,17 @@ web-platform-tests-crashtest:
android.*: []
android-em-7.0-x86_64-qr/debug: built-projects
default: built-projects
- tier: default
+ tier:
+ by-variant:
+ no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ webrender-sw+no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ default: default
web-platform-tests-print-reftest:
description: "Web platform print-reftest run"
@@ -509,7 +497,17 @@ web-platform-tests-print-reftest:
treeherder-symbol: W(Wp)
chunks: 1
test-manifest-loader: null # don't load tests in the taskgraph
- tier: default
+ tier:
+ by-variant:
+ no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ webrender-sw+no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ default: default
variants:
- no-fission
- webrender-sw
@@ -526,13 +524,13 @@ web-platform-tests-print-reftest:
webrender-sw+no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug: built-projects
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
default: []
no-fission:
by-test-platform:
- linux1804-64-qr/debug: ['trunk']
- linux1804-64(-shippable|-asan)?-qr/opt: ['trunk']
+ linux1804-64-qr/debug: ['mozilla-central']
+ linux1804-64(-shippable|-asan)?-qr/opt: ['mozilla-central']
android.*: built-projects
default: []
default:
diff --git a/taskcluster/ci/test/xpcshell.yml b/taskcluster/ci/test/xpcshell.yml
index 46ecd690e5..02a615bdc2 100644
--- a/taskcluster/ci/test/xpcshell.yml
+++ b/taskcluster/ci/test/xpcshell.yml
@@ -51,6 +51,11 @@ xpcshell:
- socketprocess_networking
- no-fission
- msix
+ - geckoview-no-fission-ship
+ instance-size:
+ by-variant:
+ conditioned_profile: large
+ default: large-noscratch
run-on-projects:
by-variant:
conditioned_profile:
@@ -61,27 +66,32 @@ xpcshell:
default: []
socketprocess_networking+no-fission:
by-test-platform:
- linux1804-64.*: ['trunk']
+ linux1804-64.*: ['mozilla-central']
default: []
socketprocess_networking:
by-test-platform:
- (linux1804-64|macosx).*: ['trunk'] # All Linux & Mac variants
+ macosx1015.*: ['trunk'] # All Mac variants
^(?!.*asan).*windows11.*: ['trunk'] # All Windows11 except ASAN
default: []
no-fission:
by-test-platform:
android-em-7.0-x86_64-qr/debug-isolated-process: []
android.*: built-projects
- linux1804-64.*: ['trunk']
+ linux1804-64.*: ['mozilla-central']
default: []
msix:
by-test-platform:
windows11-64-2009(-shippable)?-qr/opt: built-projects
windows11-64-2009-qr/debug: built-projects
default: []
+ geckoview-no-fission-ship:
+ by-test-platform:
+ android-em-7.0-x86_64-qr/debug-isolated-process: []
+ android-em.*: built-projects
+ default: []
default:
by-test-platform:
- android.*: []
+ android.*: built-projects
.*wayland.*: []
windows.*-asan-qr/opt: [] # No XPCShell on ASAN yet
default: built-projects
@@ -89,7 +99,7 @@ xpcshell:
by-test-platform:
.*-asan-qr/opt: 4
.*-ccov.*/.*: 8
- .*-tsan-qr/opt: 8
+ .*-tsan-qr/opt: 10
(android-em-7.*|macosx.*|linux1804-64.*/opt): 2
default: 4
max-run-time:
@@ -103,10 +113,20 @@ xpcshell:
default: 5400
allow-software-gl-layers: false
tier:
- by-test-platform:
- windows.*-asan.*: 3
- android-em-7.0-x86_64-qr/debug-isolated-process: 3
- default: default
+ by-variant:
+ no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ socketprocess_networking+no-fission:
+ by-test-platform:
+ linux.*: 2
+ default: default
+ default:
+ by-test-platform:
+ windows.*-asan.*: 3
+ android-em-7.0-x86_64-qr/debug-isolated-process: 3
+ default: default
mozharness:
extra-options:
by-test-platform:
@@ -138,6 +158,7 @@ xpcshell:
- android-emulator-linux
- linux64-node
- linux64-minidump-stackwalk
+ - linux64-hostutils
xpcshell-failures:
description: "xpcshell specific failures test run"
diff --git a/taskcluster/ci/toolchain/android.yml b/taskcluster/ci/toolchain/android.yml
index 3c76f7cad4..6c2c558c9c 100644
--- a/taskcluster/ci/toolchain/android.yml
+++ b/taskcluster/ci/toolchain/android.yml
@@ -190,6 +190,8 @@ linux64-android-gradle-dependencies:
worker:
env:
GRADLE_USER_HOME: "/builds/worker/workspace/build/src/mobile/android/gradle/dotgradle-online"
+ ANDROID_SDK_ROOT: "/builds/worker/fetches/android-sdk-linux"
+ max-run-time: 2700
run:
script: android-gradle-dependencies.sh
sparse-profile: null
@@ -200,6 +202,10 @@ linux64-android-gradle-dependencies:
- 'mobile/android/config/mozconfigs/android-arm-gradle-dependencies/**'
- 'mobile/android/config/mozconfigs/common*'
- 'mobile/android/gradle.configure'
+ - 'mobile/android/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt'
+ - 'mobile/android/android-components/plugins/dependencies/src/main/java/ApplicationServices.kt'
+ - 'mobile/android/fenix/plugins/fenixdependencies/src/main/java/FenixDependenciesPlugin.kt'
+ - 'mobile/android/focus-android/plugins/focusdependencies/src/main/java/FocusDependenciesPlugin.kt'
toolchain-artifact: public/build/android-gradle-dependencies.tar.zst
toolchain-alias: android-gradle-dependencies
fetches:
@@ -212,6 +218,7 @@ linux64-android-gradle-dependencies:
- linux64-android-sdk-linux-repack
- linux64-jdk-repack
- linux64-node
+ - android-gradle-python-envs
linux64-android-gradle-dependencies-lite:
description: "Android Lite Gradle dependencies toolchain task"
@@ -230,6 +237,8 @@ linux64-android-gradle-dependencies-lite:
- 'mobile/android/config/mozconfigs/android-arm-gradle-dependencies/**'
- 'mobile/android/config/mozconfigs/common*'
- 'mobile/android/gradle.configure'
+ - 'mobile/android/android-components/plugins/dependencies/src/main/java/DependenciesPlugin.kt'
+ - 'mobile/android/android-components/plugins/dependencies/src/main/java/ApplicationServices.kt'
toolchain-artifact: public/build/android-gradle-dependencies.tar.zst
toolchain-alias: android-gradle-dependencies-lite
fetches:
@@ -242,3 +251,14 @@ linux64-android-gradle-dependencies-lite:
- linux64-android-sdk-linux-repack
- linux64-jdk-repack
- linux64-node
+ - android-gradle-python-envs
+
+android-gradle-python-envs:
+ description: "gradle-python-envs plugin toolchain task"
+ treeherder:
+ symbol: TL(gradle-python-envs)
+ run:
+ script: gradle-python-envs.sh
+ arguments: ['0.0.31']
+ sparse-profile: null
+ toolchain-artifact: public/build/gradle-python-envs-0.0.31.tar.zst
diff --git a/taskcluster/ci/toolchain/dump-syms.yml b/taskcluster/ci/toolchain/dump-syms.yml
index 95e90b5984..05aee5e352 100644
--- a/taskcluster/ci/toolchain/dump-syms.yml
+++ b/taskcluster/ci/toolchain/dump-syms.yml
@@ -24,7 +24,7 @@ linux64-dump_syms:
fetches:
toolchain:
- linux64-clang-toolchain
- - linux64-rust-toolchain
+ - linux64-rust
- sysroot-x86_64-linux-gnu
macosx64-dump_syms:
@@ -35,7 +35,7 @@ macosx64-dump_syms:
arguments: ['x86_64-apple-darwin']
fetches:
toolchain:
- - linux64-rust-macos-toolchain
+ - linux64-rust-macos
- linux64-clang-toolchain
- macosx64-sdk-toolchain
@@ -46,7 +46,7 @@ macosx64-aarch64-dump_syms:
arguments: ['aarch64-apple-darwin']
fetches:
toolchain:
- - linux64-rust-macos-toolchain
+ - linux64-rust-macos
- linux64-clang-toolchain
- macosx64-sdk-toolchain
@@ -58,5 +58,5 @@ win64-dump_syms:
fetches:
toolchain:
- linux64-clang-toolchain
- - linux64-rust-windows-toolchain
+ - linux64-rust-windows
- vs-toolchain
diff --git a/taskcluster/ci/toolchain/hostutils.yml b/taskcluster/ci/toolchain/hostutils.yml
new file mode 100644
index 0000000000..d9974e917a
--- /dev/null
+++ b/taskcluster/ci/toolchain/hostutils.yml
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+job-defaults:
+ description: "hostutils toolchain build"
+ worker-type: b-linux-gcp
+ worker:
+ max-run-time: 1800
+ run:
+ using: toolchain-script
+ script: get-hostutils.sh
+ toolchain-artifact: public/build/hostutils.tar.zst
+
+linux64-hostutils:
+ treeherder:
+ symbol: TL(hostutils)
+ worker:
+ env:
+ TOOLTOOL_MANIFEST: testing/config/tooltool-manifests/linux64/hostutils.manifest
+ run:
+ resources:
+ - testing/config/tooltool-manifests/linux64/hostutils.manifest
diff --git a/taskcluster/ci/toolchain/kind.yml b/taskcluster/ci/toolchain/kind.yml
index d9dd52c980..524bb20670 100644
--- a/taskcluster/ci/toolchain/kind.yml
+++ b/taskcluster/ci/toolchain/kind.yml
@@ -36,6 +36,7 @@ jobs-from:
- geckodriver.yml
- gn.yml
- grcov.yml
+ - hostutils.yml
- libunwind.yml
- llvm-symbolizer.yml
- macos-sdk.yml
diff --git a/taskcluster/ci/toolchain/llvm-symbolizer.yml b/taskcluster/ci/toolchain/llvm-symbolizer.yml
index 8864a81cc1..11b63397c2 100644
--- a/taskcluster/ci/toolchain/llvm-symbolizer.yml
+++ b/taskcluster/ci/toolchain/llvm-symbolizer.yml
@@ -18,8 +18,10 @@ linux32-llvm-symbolizer-17:
arguments:
- i686-unknown-linux-gnu
- build/build-clang/clang-17.json
+ - build/build-clang/llvm-symbolizer-17.json
resources:
- build/build-clang/clang-17.json
+ - build/build-clang/llvm-symbolizer-17.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-alias:
by-project:
@@ -40,8 +42,10 @@ linux64-llvm-symbolizer-17:
arguments:
- x86_64-unknown-linux-gnu
- build/build-clang/clang-17.json
+ - build/build-clang/llvm-symbolizer-17.json
resources:
- build/build-clang/clang-17.json
+ - build/build-clang/llvm-symbolizer-17.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-alias:
by-project:
@@ -62,8 +66,10 @@ macosx64-llvm-symbolizer-17:
arguments:
- x86_64-apple-darwin
- build/build-clang/clang-17.json
+ - build/build-clang/llvm-symbolizer-17.json
resources:
- build/build-clang/clang-17.json
+ - build/build-clang/llvm-symbolizer-17.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-alias:
by-project:
@@ -84,8 +90,10 @@ macosx64-aarch64-llvm-symbolizer-17:
arguments:
- aarch64-apple-darwin
- build/build-clang/clang-17.json
+ - build/build-clang/llvm-symbolizer-17.json
resources:
- build/build-clang/clang-17.json
+ - build/build-clang/llvm-symbolizer-17.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-alias:
by-project:
@@ -106,8 +114,10 @@ win64-llvm-symbolizer-17:
arguments:
- x86_64-pc-windows-msvc
- build/build-clang/clang-17.json
+ - build/build-clang/llvm-symbolizer-17.json
resources:
- build/build-clang/clang-17.json
+ - build/build-clang/llvm-symbolizer-17.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-alias:
by-project:
@@ -128,8 +138,10 @@ linux32-llvm-symbolizer-18:
arguments:
- i686-unknown-linux-gnu
- build/build-clang/clang-18.json
+ - build/build-clang/llvm-symbolizer-18.json
resources:
- build/build-clang/clang-18.json
+ - build/build-clang/llvm-symbolizer-18.json
- taskcluster/scripts/misc/build-llvm-common.sh
fetches:
fetch:
@@ -146,8 +158,10 @@ linux64-llvm-symbolizer-18:
arguments:
- x86_64-unknown-linux-gnu
- build/build-clang/clang-18.json
+ - build/build-clang/llvm-symbolizer-18.json
resources:
- build/build-clang/clang-18.json
+ - build/build-clang/llvm-symbolizer-18.json
- taskcluster/scripts/misc/build-llvm-common.sh
fetches:
fetch:
@@ -164,8 +178,10 @@ macosx64-llvm-symbolizer-18:
arguments:
- x86_64-apple-darwin
- build/build-clang/clang-18.json
+ - build/build-clang/llvm-symbolizer-18.json
resources:
- build/build-clang/clang-18.json
+ - build/build-clang/llvm-symbolizer-18.json
- taskcluster/scripts/misc/build-llvm-common.sh
fetches:
fetch:
@@ -182,8 +198,10 @@ macosx64-aarch64-llvm-symbolizer-18:
arguments:
- aarch64-apple-darwin
- build/build-clang/clang-18.json
+ - build/build-clang/llvm-symbolizer-18.json
resources:
- build/build-clang/clang-18.json
+ - build/build-clang/llvm-symbolizer-18.json
- taskcluster/scripts/misc/build-llvm-common.sh
fetches:
fetch:
@@ -200,8 +218,10 @@ win64-llvm-symbolizer-18:
arguments:
- x86_64-pc-windows-msvc
- build/build-clang/clang-18.json
+ - build/build-clang/llvm-symbolizer-18.json
resources:
- build/build-clang/clang-18.json
+ - build/build-clang/llvm-symbolizer-18.json
- taskcluster/scripts/misc/build-llvm-common.sh
fetches:
fetch:
@@ -220,8 +240,10 @@ linux32-llvm-symbolizer-trunk:
arguments:
- i686-unknown-linux-gnu
- build/build-clang/clang-trunk.json
+ - build/build-clang/llvm-symbolizer-trunk.json
resources:
- build/build-clang/clang-trunk.json
+ - build/build-clang/llvm-symbolizer-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-alias:
by-project:
@@ -244,8 +266,10 @@ linux64-llvm-symbolizer-trunk:
arguments:
- x86_64-unknown-linux-gnu
- build/build-clang/clang-trunk.json
+ - build/build-clang/llvm-symbolizer-trunk.json
resources:
- build/build-clang/clang-trunk.json
+ - build/build-clang/llvm-symbolizer-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-alias:
by-project:
@@ -268,8 +292,10 @@ macosx64-llvm-symbolizer-trunk:
arguments:
- x86_64-apple-darwin
- build/build-clang/clang-trunk.json
+ - build/build-clang/llvm-symbolizer-trunk.json
resources:
- build/build-clang/clang-trunk.json
+ - build/build-clang/llvm-symbolizer-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-alias:
by-project:
@@ -292,8 +318,10 @@ macosx64-aarch64-llvm-symbolizer-trunk:
arguments:
- aarch64-apple-darwin
- build/build-clang/clang-trunk.json
+ - build/build-clang/llvm-symbolizer-trunk.json
resources:
- build/build-clang/clang-trunk.json
+ - build/build-clang/llvm-symbolizer-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-alias:
by-project:
@@ -316,8 +344,10 @@ win64-llvm-symbolizer-trunk:
arguments:
- x86_64-pc-windows-msvc
- build/build-clang/clang-trunk.json
+ - build/build-clang/llvm-symbolizer-trunk.json
resources:
- build/build-clang/clang-trunk.json
+ - build/build-clang/llvm-symbolizer-trunk.json
- taskcluster/scripts/misc/build-llvm-common.sh
toolchain-alias:
by-project:
diff --git a/taskcluster/ci/toolchain/macos-sdk.yml b/taskcluster/ci/toolchain/macos-sdk.yml
index 60e4c231fd..194a1ee20a 100644
--- a/taskcluster/ci/toolchain/macos-sdk.yml
+++ b/taskcluster/ci/toolchain/macos-sdk.yml
@@ -32,20 +32,20 @@ macosx64-sdk-13.3:
toolchain-alias:
- MacOSX13.3.sdk
-macosx64-sdk-14.2:
- description: "MacOSX14.2 SDK"
+macosx64-sdk-14.4:
+ description: "MacOSX14.4 SDK"
treeherder:
- symbol: TM(sdk14.2)
+ symbol: TM(sdk14.4)
run:
arguments:
- - https://swcdn.apple.com/content/downloads/35/47/042-23550-A_M34N50O9N3/sua6ev7bjcexvorh4709vsgk64zgvsl42p/CLTools_macOSNMOS_SDK.pkg
- - 22ce0acc9ab5c28845218b8c686d0208d6bf66bef64a369d3c0622247ba1258b438c9e44c64bb2bacf5e99eb398a6e7a337f2730cd4a969a7f0d2d5d3107306a
- - Library/Developer/CommandLineTools/SDKs/MacOSX14.2.sdk
- toolchain-artifact: project/gecko/mac-sdk/MacOSX14.2.sdk.tar.zst
+ - https://swcdn.apple.com/content/downloads/14/48/052-59890-A_I0F5YGAY0Y/p9n40hio7892gou31o1v031ng6fnm9sb3c/CLTools_macOSNMOS_SDK.pkg
+ - a4e05d2a051027620c86f72694da126a2ceed59b8740270426c4ca3adb38e16fe981b536a373a7f0cdcc84bbe9d9149608ccd03967dbd94262548ccadbfa0f5d
+ - Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk
+ toolchain-artifact: project/gecko/mac-sdk/MacOSX14.4.sdk.tar.zst
toolchain-alias:
- macosx64-sdk
- macosx64-sdk-toolchain
- - MacOSX14.2.sdk
+ - MacOSX14.4.sdk
ios-sdk-17.4:
description: "iPhoneOS17.4 SDK"
diff --git a/taskcluster/ci/toolchain/misc.yml b/taskcluster/ci/toolchain/misc.yml
index 4424cf6e0b..80356f5be6 100644
--- a/taskcluster/ci/toolchain/misc.yml
+++ b/taskcluster/ci/toolchain/misc.yml
@@ -206,8 +206,8 @@ macosx64-custom-car:
treeherder:
symbol: TM(custom-car)
worker:
- max-run-time: 35000
- use-system-python: false
+ max-run-time: 40000
+ use-python: default
run-on-projects: []
run:
script: build-custom-car.sh
@@ -231,7 +231,7 @@ macosx64-custom-car:
toolchain-artifact: public/build/car_macosx.tar.zst
fetches:
toolchain:
- - macosx64-sdk-14.2
+ - macosx64-sdk-14.4
macosx-arm64-custom-car:
description: "Custom chromium-as-release build for mac (apple silicon)"
@@ -243,7 +243,7 @@ macosx-arm64-custom-car:
tier: 2
worker:
max-run-time: 50000
- use-system-python: false
+ use-python: default
run-on-projects: []
run:
script: build-custom-car.sh
@@ -267,7 +267,7 @@ macosx-arm64-custom-car:
toolchain-artifact: public/build/car_macosx_arm.tar.zst
fetches:
toolchain:
- - macosx64-sdk-14.2
+ - macosx64-sdk-14.4
android-custom-car:
description: "Custom chromium-as-release build for Android"
@@ -278,7 +278,7 @@ android-custom-car:
worker:
docker-image: {in-tree: custom-car-android}
max-run-time: 20000
- use-system-python: false
+ use-python: default
run-on-projects: []
run:
script: build-custom-car.sh
@@ -313,7 +313,7 @@ linux64-custom-car:
worker:
docker-image: {in-tree: custom-car-linux}
max-run-time: 16200
- use-system-python: false
+ use-python: default
run-on-projects: []
run:
script: build-custom-car.sh
@@ -347,7 +347,7 @@ win64-custom-car:
max-run-time: 16200
env:
MSYSTEM: "MINGW64"
- use-system-python: false
+ use-python: default
run-on-projects: []
run:
script: build-custom-car.sh
@@ -508,23 +508,6 @@ nsis:
- linux64-clang-toolchain
- sysroot-x86_64-linux-gnu
-win64-vs2019:
- description: "VS 2019"
- attributes:
- local-toolchain: true
- treeherder:
- symbol: TW64(msvc2019)
- worker:
- env:
- MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE: system
- run:
- script: get_vs.py
- arguments:
- - build/vs/vs2019.yaml
- resources:
- - build/vs/vs2019.yaml
- toolchain-artifact: project/gecko/vs/vs.tar.zst
-
win64-vs2022:
description: "VS 2022"
attributes:
@@ -617,3 +600,21 @@ win64-libxml2:
toolchain:
- linux64-clang-toolchain
- vs-toolchain
+
+talos-pdfs:
+ description: "Gathers all the PDFs needed for the pdfpaint test"
+ attributes:
+ local-toolchain: true
+ treeherder:
+ symbol: TL(talos-pdfs)
+ worker:
+ max-run-time: 3600
+ run:
+ script: run-fetch-talos-pdfs.sh
+ sparse-profile: null
+ resources:
+ - 'taskcluster/scripts/misc/fetch-talos-pdfs.py'
+ toolchain-artifact: public/build/talos-pdfs.tar.zst
+ fetches:
+ fetch:
+ - mozilla-pdf.js
diff --git a/taskcluster/ci/toolchain/rust.yml b/taskcluster/ci/toolchain/rust.yml
index 62f4fd4747..437c497d71 100644
--- a/taskcluster/ci/toolchain/rust.yml
+++ b/taskcluster/ci/toolchain/rust.yml
@@ -26,12 +26,12 @@ linux64-rust-1.74:
- linux64-rust-base
- linux64-rust-toolchain
-linux64-rust-1.76:
+linux64-rust-1.77:
treeherder:
symbol: TL(rust)
run:
arguments: [
- '--channel', '1.76.0',
+ '--channel', '1.77.2',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'i686-unknown-linux-gnu',
@@ -62,18 +62,18 @@ linux64-rust-dev:
]
fetches:
fetch:
- - rust-1.76.0
+ - rust-1.77.2
toolchain:
- linux64-clang-toolchain
- linux64-toolchain-sysroot
-linux64-rust-cross-1.76:
+linux64-rust-cross-1.77:
description: "rust repack with macos and windows cross support"
treeherder:
symbol: TL(rust-cross)
run:
arguments: [
- '--channel', '1.76.0',
+ '--channel', '1.77.2',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'i686-unknown-linux-gnu',
@@ -90,13 +90,13 @@ linux64-rust-cross-1.76:
]
toolchain-alias: linux64-rust-cross
-linux64-rust-static-1.76:
+linux64-rust-static-1.77:
description: "rust repack with static linking support"
treeherder:
symbol: TL(rust-static)
run:
arguments: [
- '--channel', '1.76.0',
+ '--channel', '1.77.2',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'aarch64-unknown-linux-musl',
'--target', 'x86_64-unknown-linux-gnu',
@@ -120,13 +120,13 @@ linux64-rust-macos-1.70:
]
toolchain-alias: linux64-rust-macos-toolchain
-linux64-rust-macos-1.76:
+linux64-rust-macos-1.77:
description: "rust repack with macos-cross support"
treeherder:
symbol: TL(rust-macos)
run:
arguments: [
- '--channel', '1.76.0',
+ '--channel', '1.77.2',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-apple-darwin',
@@ -134,13 +134,13 @@ linux64-rust-macos-1.76:
]
toolchain-alias: linux64-rust-macos
-linux64-rust-ios-1.76:
+linux64-rust-ios-1.77:
description: "rust repack with ios-cross support"
treeherder:
symbol: TL(rust-ios)
run:
arguments: [
- '--channel', '1.76.0',
+ '--channel', '1.77.2',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'aarch64-apple-ios',
@@ -148,13 +148,13 @@ linux64-rust-ios-1.76:
]
toolchain-alias: linux64-rust-ios
-linux64-rust-android-1.76:
+linux64-rust-android-1.77:
description: "rust repack with android-cross support"
treeherder:
symbol: TL(rust-android)
run:
arguments: [
- '--channel', '1.76.0',
+ '--channel', '1.77.2',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'armv7-linux-androideabi',
@@ -179,13 +179,13 @@ linux64-rust-windows-1.70:
]
toolchain-alias: linux64-rust-windows-toolchain
-linux64-rust-windows-1.76:
+linux64-rust-windows-1.77:
description: "rust repack with windows-cross support"
treeherder:
symbol: TL(rust-win)
run:
arguments: [
- '--channel', '1.76.0',
+ '--channel', '1.77.2',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-unknown-linux-gnu',
'--target', 'x86_64-pc-windows-msvc',
@@ -194,12 +194,12 @@ linux64-rust-windows-1.76:
]
toolchain-alias: linux64-rust-windows
-win64-rust-1.76:
+win64-rust-1.77:
treeherder:
symbol: TW64(rust)
run:
arguments: [
- '--channel', '1.76.0',
+ '--channel', '1.77.2',
'--host', 'x86_64-pc-windows-msvc',
'--target', 'x86_64-pc-windows-msvc',
'--target', 'i686-pc-windows-msvc',
@@ -207,23 +207,23 @@ win64-rust-1.76:
]
toolchain-alias: win64-rust
-macosx64-rust-1.76:
+macosx64-rust-1.77:
treeherder:
symbol: TM(rust)
run:
arguments: [
- '--channel', '1.76.0',
+ '--channel', '1.77.2',
'--host', 'x86_64-apple-darwin',
'--target', 'x86_64-apple-darwin',
]
toolchain-alias: macosx64-rust
-mingw32-rust-1.76:
+mingw32-rust-1.77:
treeherder:
symbol: TMW(rust)
run:
arguments: [
- '--channel', '1.76.0',
+ '--channel', '1.77.2',
'--host', 'x86_64-unknown-linux-gnu',
'--target', 'i686-unknown-linux-gnu',
'--target', 'i686-pc-windows-gnu',
diff --git a/taskcluster/ci/ui-test-apk/kind.yml b/taskcluster/ci/ui-test-apk/kind.yml
new file mode 100644
index 0000000000..405a59f03a
--- /dev/null
+++ b/taskcluster/ci/ui-test-apk/kind.yml
@@ -0,0 +1,353 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.transform:loader
+
+transforms:
+ - gecko_taskgraph.transforms.test_apk:transforms
+ # While not a build, the build optimization works well for these tasks.
+ - gecko_taskgraph.transforms.build_schedules:transforms
+ - gecko_taskgraph.transforms.job:transforms
+ - gecko_taskgraph.transforms.task:transforms
+
+kind-dependencies:
+ - toolchain
+ - signing-apk
+
+job-defaults:
+ attributes:
+ build-type: debug
+ retrigger: true
+ fetches:
+ toolchain:
+ - android-sdk-linux
+ optimization:
+ skip-unless-backstop: null
+ worker-type: b-linux-medium-gcp
+ worker:
+ docker-image: {in-tree: android-ui-tests}
+ max-run-time: 7200
+ env:
+ GOOGLE_APPLICATION_CREDENTIALS: '.firebase_token.json'
+ ANDROID_SDK_ROOT: /builds/worker/fetches/android-sdk-linux
+ artifacts:
+ - name: public
+ path: /builds/worker/artifacts
+ type: directory
+ retry-exit-status: [20]
+ treeherder:
+ kind: test
+ tier: 2
+ run:
+ use-caches: false
+ using: run-commands
+ dummy-secrets:
+ - content: "faketoken"
+ path: .adjust_token
+ routes:
+ by-level:
+ '3':
+ - notify.slack-channel.G016BC5FUHJ.on-failed
+ 'default': []
+ scopes:
+ by-level:
+ '3':
+ - queue:route:notify.slack-channel.G016BC5FUHJ.on-failed
+ - notify:slack-channel:G016BC5FUHJ
+ 'default': []
+ extra:
+ notify:
+ by-level:
+ '3':
+ slackText: 'https://firefox-ci-tc.services.mozilla.com/tasks/${status.taskId} | ${task.metadata.name} | ${task.metadata.source}'
+ slackBlocks: |
+ [
+ {
+ "type": "header",
+ "text": {
+ "type": "plain_text",
+ "text": "firefox-android :firefox: ${task.metadata.name} :x:\n "
+ }
+ },
+ {
+ "type": "divider"
+ },
+ {
+ "type": "section",
+ "text": {
+ "type": "mrkdwn",
+ "text": "*Task*: <https://firefox-ci-tc.services.mozilla.com/tasks/${status.taskId}|Taskcluster>"
+ }
+ },
+ {
+ "type": "section",
+ "text": {
+ "type": "mrkdwn",
+ "text": "*Owner*: ${task.metadata.owner}"
+ }
+ },
+ {
+ "type": "section",
+ "text": {
+ "type": "mrkdwn",
+ "text": "*Source*: <${task.payload.env.GECKO_BASE_REPOSITORY}/rev/${task.payload.env.GECKO_HEAD_REV}|Commit> :hg:"
+ }
+ },
+ {
+ "type": "divider"
+ },
+ {
+ "type": "context",
+ "elements": [
+ {
+ "type": "mrkdwn",
+ "text": ":testops-notify: created by <https://mozilla-hub.atlassian.net/wiki/spaces/MTE/overview|Mobile Test Engineering>"
+ }
+ ]
+ }
+ ]
+ 'default': {}
+
+jobs:
+ focus-arm-debug:
+ attributes:
+ build-type: focus-debug-firebase
+ shipping-product: focus
+ description: 'Focus UI tests with firebase'
+ run:
+ secrets:
+ - name: project/mobile/firefox-android/focus-android/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ pre-commands:
+ - ["cd", "mobile/android/focus-android"]
+ commands:
+ - [wget, {artifact-reference: '<signed-apk-debug-apk/public/build/target.arm64-v8a.apk>'}, '-O', app.apk]
+ - [wget, {artifact-reference: '<signed-apk-android-test/public/build/target.noarch.apk>'}, '-O', android-test.apk]
+ - [python3, ../../../taskcluster/scripts/tests/test-lab.py, arm64-v8a, app.apk, --apk_test, android-test.apk]
+ dependencies:
+ # key is arbitrary, the value corresponds to <kind name>-<build-name>
+ signed-apk-debug-apk: signing-apk-focus-debug
+ signed-apk-android-test: signing-apk-focus-android-test-debug
+ treeherder:
+ platform: 'focus-ui-test/opt'
+ symbol: focus-debug(ui-test-arm)
+ worker:
+ env:
+ GOOGLE_PROJECT: 'moz-focus-android'
+ focus-arm-nightly:
+ attributes:
+ build-type: focus-nightly-firebase
+ shipping-product: focus
+ description: 'UI tests on Nightly with firebase'
+ dependencies:
+ signed-apk-debug-apk: signing-apk-focus-nightly-firebase
+ signed-apk-android-test: signing-apk-focus-android-test-nightly
+ run-on-projects: [trunk]
+ run:
+ secrets:
+ - name: project/mobile/firefox-android/focus-android/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ pre-commands:
+ - ["cd", "mobile/android/focus-android"]
+ commands:
+ - [wget, {artifact-reference: '<signed-apk-debug-apk/public/build/target.arm64-v8a.apk>'}, '-O', app.apk]
+ - [wget, {artifact-reference: '<signed-apk-android-test/public/build/target.noarch.apk>'}, '-O', android-test.apk]
+ - [python3, ../../../taskcluster/scripts/tests/test-lab.py, arm-start-test, app.apk, --apk_test, android-test.apk]
+ treeherder:
+ platform: 'focus-ui-test/opt'
+ symbol: focus-nightly(ui-test-arm-nightly)
+ worker:
+ env:
+ GOOGLE_PROJECT: 'moz-focus-android'
+ focus-arm-beta:
+ attributes:
+ build-type: focus-beta-firebase
+ shipping-product: focus
+ description: 'UI tests on Beta with firebase'
+ dependencies:
+ signed-apk-debug-apk: signing-apk-focus-beta-firebase
+ signed-apk-android-test: signing-apk-focus-android-test-beta
+ run-on-projects: [release]
+ run:
+ secrets:
+ - name: project/mobile/firefox-android/focus-android/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ pre-commands:
+ - ["cd", "mobile/android/focus-android"]
+ commands:
+ - [wget, {artifact-reference: '<signed-apk-debug-apk/public/build/target.arm64-v8a.apk>'}, '-O', app.apk]
+ - [wget, {artifact-reference: '<signed-apk-android-test/public/build/target.noarch.apk>'}, '-O', android-test.apk]
+ - [python3, ../../../taskcluster/scripts/tests/test-lab.py, arm-beta, app.apk, --apk_test, android-test.apk]
+ treeherder:
+ platform: 'focus-ui-test/opt'
+ symbol: focus-beta(ui-test-arm-beta)
+ worker:
+ env:
+ GOOGLE_PROJECT: 'moz-focus-android'
+ fenix-arm-debug:
+ attributes:
+ build-type: fenix-debug-firebase
+ shipping-product: fenix
+ description: Test Fenix
+ dependencies:
+ signed-apk-debug-apk: signing-apk-fenix-debug
+ signed-apk-android-test: signing-apk-fenix-android-test-debug
+ run:
+ secrets:
+ - name: project/mobile/firefox-android/fenix/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ pre-commands:
+ - ["cd", "mobile/android/fenix"]
+ commands:
+ - [wget, {artifact-reference: '<signed-apk-debug-apk/public/build/target.arm64-v8a.apk>'}, '-O', app.apk]
+ - [wget, {artifact-reference: '<signed-apk-android-test/public/build/target.noarch.apk>'}, '-O', android-test.apk]
+ - [python3, ../../../taskcluster/scripts/tests/test-lab.py, arm64-v8a, app.apk, --apk_test, android-test.apk]
+ treeherder:
+ platform: 'fenix-ui-test/opt'
+ symbol: fenix-debug(ui-test-arm)
+ worker:
+ env:
+ GOOGLE_PROJECT: moz-fenix
+ screenshots-arm:
+ attributes:
+ build-type: fenix-debug-screenshots
+ shipping-product: fenix
+ screenshots: true
+ cron: true
+ description: Run UI screenshots tests to keep them up to date
+ dependencies:
+ signed-apk-debug-apk: signing-apk-fenix-debug
+ signed-apk-android-test: signing-apk-fenix-android-test-debug
+ run:
+ secrets:
+ - name: project/mobile/firefox-android/fenix/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ pre-commands:
+ - ["cd", "mobile/android/fenix"]
+ commands:
+ - [wget, {artifact-reference: '<signed-apk-debug-apk/public/build/target.arm64-v8a.apk>'}, '-O', app.apk]
+ - [wget, {artifact-reference: '<signed-apk-android-test/public/build/target.noarch.apk>'}, '-O', android-test.apk]
+ - [python3, ../../../taskcluster/scripts/tests/test-lab.py, arm-screenshots-tests, app.apk, --apk_test, android-test.apk]
+ treeherder:
+ platform: 'fenix-ui-test/opt'
+ symbol: fenix-debug(screenshots-arm)
+ worker:
+ env:
+ GOOGLE_PROJECT: moz-fenix
+ fenix-arm-beta:
+ attributes:
+ build-type: fenix-beta-firebase
+ shipping-product: fenix
+ description: Test Fenix
+ dependencies:
+ signed-apk-debug-apk: signing-apk-fenix-beta-firebase
+ signed-apk-android-test: signing-apk-fenix-android-test-beta
+ run-on-projects: [release]
+ run:
+ secrets:
+ - name: project/mobile/firefox-android/fenix/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ pre-commands:
+ - ["cd", "mobile/android/fenix"]
+ commands:
+ - [wget, {artifact-reference: '<signed-apk-debug-apk/public/build/target.arm64-v8a.apk>'}, '-O', app.apk]
+ - [wget, {artifact-reference: '<signed-apk-android-test/public/build/target.noarch.apk>'}, '-O', android-test.apk]
+ - [python3, ../../../taskcluster/scripts/tests/test-lab.py, arm-beta, app.apk, --apk_test, android-test.apk]
+ treeherder:
+ platform: 'fenix-ui-test/opt'
+ symbol: fenix-beta(ui-test-arm-beta)
+ worker:
+ env:
+ GOOGLE_PROJECT: moz-fenix
+ fenix-arm-nightly:
+ attributes:
+ build-type: fenix-nightly-firebase
+ shipping-product: fenix
+ description: Test Fenix
+ dependencies:
+ signed-apk-debug-apk: signing-apk-fenix-nightly-firebase
+ signed-apk-android-test: signing-apk-fenix-android-test-nightly
+ run-on-projects: [trunk]
+ run:
+ secrets:
+ - name: project/mobile/firefox-android/fenix/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ pre-commands:
+ - ["cd", "mobile/android/fenix"]
+ commands:
+ - [wget, {artifact-reference: '<signed-apk-debug-apk/public/build/target.arm64-v8a.apk>'}, '-O', app.apk]
+ - [wget, {artifact-reference: '<signed-apk-android-test/public/build/target.noarch.apk>'}, '-O', android-test.apk]
+ - [python3, ../../../taskcluster/scripts/tests/test-lab.py, arm-start-test, app.apk, --apk_test, android-test.apk]
+ treeherder:
+ platform: 'fenix-ui-test/opt'
+ symbol: fenix-nightly(ui-test-arm-nightly)
+ worker:
+ env:
+ GOOGLE_PROJECT: moz-fenix
+ fenix-legacy-arm:
+ attributes:
+ build-type: fenix-legacy
+ legacy: true
+ shipping-product: fenix
+ description: Run select UI tests on legacy Android devices and API levels
+ dependencies:
+ signed-apk-debug-apk: signing-apk-fenix-debug
+ signed-apk-android-test: signing-apk-fenix-android-test-debug
+ run:
+ secrets:
+ - name: project/mobile/firefox-android/fenix/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ pre-commands:
+ - ["cd", "mobile/android/fenix"]
+ commands:
+ - [wget, {artifact-reference: '<signed-apk-debug-apk/public/build/target.arm64-v8a.apk>'}, '-O', app.apk]
+ - [wget, {artifact-reference: '<signed-apk-android-test/public/build/target.noarch.apk>'}, '-O', android-test.apk]
+ - [python3, ../../../taskcluster/scripts/tests/test-lab.py, arm-legacy-api-tests, app.apk, --apk_test, android-test.apk]
+ treeherder:
+ platform: 'fenix-ui-test/opt'
+ symbol: fenix-debug(legacy-arm)
+ worker:
+ env:
+ GOOGLE_PROJECT: moz-fenix
+
+ fenix-robo-arm-debug:
+ attributes:
+ build-type: fenix-robo
+ shipping-product: fenix
+ description: Run Robo test on ARM devices
+ dependencies:
+ signed-apk-debug-apk: signing-apk-fenix-debug
+ run:
+ secrets:
+ - name: project/mobile/firefox-android/fenix/firebase
+ key: firebaseToken
+ path: .firebase_token.json
+ json: true
+ pre-commands:
+ - ["cd", "mobile/android/fenix"]
+ commands:
+ - [wget, {artifact-reference: '<signed-apk-debug-apk/public/build/target.arm64-v8a.apk>'}, '-O', app.apk]
+ - [python3, ../../../taskcluster/scripts/tests/test-lab.py, arm-robo-test, app.apk]
+ treeherder:
+ platform: 'fenix-ui-test/opt'
+ symbol: fenix-debug(robo-arm)
+ worker:
+ env:
+ GOOGLE_PROJECT: moz-fenix
diff --git a/taskcluster/ci/updatebot/kind.yml b/taskcluster/ci/updatebot/kind.yml
index b62eccc5bc..2a1bc00d42 100644
--- a/taskcluster/ci/updatebot/kind.yml
+++ b/taskcluster/ci/updatebot/kind.yml
@@ -25,7 +25,7 @@ jobs:
worker-type: b-linux-gcp
worker:
docker-image: {in-tree: updatebot}
- max-run-time: 3600
+ max-run-time: 4500
taskcluster-proxy: true
scopes:
- secrets:get:project/updatebot/{level}/try-sshkey
@@ -44,7 +44,7 @@ jobs:
status-types:
- on-failed
- on-exception
- emails: ["tom@mozilla.com", "jewilde@mozilla.com"]
+ emails: ["tom@mozilla.com", "fbraun@mozilla.com"]
fetches:
toolchain:
- linux64-rust
@@ -60,7 +60,7 @@ jobs:
tier: 1
worker-type: b-win2022
worker:
- max-run-time: 3600
+ max-run-time: 4500
taskcluster-proxy: true
# begin _GENERATE_DEPOT_TOOLS_BINARIES_
# artifacts:
diff --git a/taskcluster/ci/upload-symbols/kind.yml b/taskcluster/ci/upload-symbols/kind.yml
index 0421835607..cf6875520a 100644
--- a/taskcluster/ci/upload-symbols/kind.yml
+++ b/taskcluster/ci/upload-symbols/kind.yml
@@ -33,7 +33,7 @@ jobs:
from-deps:
group-by: platform
worker-type: b-linux-gcp
- use-system-python: false
+ use-python: default
worker:
docker-image: {in-tree: "debian12-base"}
max-run-time: 1800
diff --git a/taskcluster/ci/valgrind/kind.yml b/taskcluster/ci/valgrind/kind.yml
index 754616e611..9ccff4188f 100644
--- a/taskcluster/ci/valgrind/kind.yml
+++ b/taskcluster/ci/valgrind/kind.yml
@@ -16,7 +16,7 @@ transforms:
job-defaults:
attributes:
retrigger: true
- use-system-python: false
+ use-python: default
jobs:
linux64-valgrind-qr/opt-swr:
diff --git a/taskcluster/ci/webrender/kind.yml b/taskcluster/ci/webrender/kind.yml
index 099fc2bc7d..9443a096c1 100644
--- a/taskcluster/ci/webrender/kind.yml
+++ b/taskcluster/ci/webrender/kind.yml
@@ -26,7 +26,7 @@ job-defaults:
RUSTFLAGS: '--deny warnings'
run:
sparse-profile: webrender
- use-system-python: false
+ use-python: default
jobs:
lint-tidy: