gecko-dev/taskcluster/ci/build/android.yml

587 строки
18 KiB
YAML

# 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:
attributes:
artifact_map: taskcluster/taskgraph/manifests/fennec_geckoview.yml
index:
product: mobile
worker:
docker-image: {in-tree: android-build}
max-run-time: 7200
env:
GRADLE_USER_HOME: "/builds/worker/checkouts/gecko/mobile/android/gradle/dotgradle-offline"
artifacts:
- name: public/build/maven
path: /builds/worker/workspace/obj-build/gradle/build/mobile/android/geckoview/maven/
type: directory
- name: public/build/geckoview-androidTest.apk
path: /builds/worker/workspace/obj-build/gradle/build/mobile/android/geckoview/outputs/apk/androidTest/withGeckoBinaries/debug/geckoview-withGeckoBinaries-debug-androidTest.apk
type: file
- name: public/build/geckoview_example.apk
path: /builds/worker/workspace/obj-build/gradle/build/mobile/android/geckoview_example/outputs/apk/withGeckoBinaries/debug/geckoview_example-withGeckoBinaries-debug.apk
type: file
- name: public/build
path: /builds/worker/artifacts/
type: directory
run:
using: mozharness
script: "mozharness/scripts/fx_desktop_build.py"
secrets: true
mozconfig-variant: null
tooltool-downloads: internal
fetches:
toolchain:
- android-gradle-dependencies
- android-ndk-linux
- android-sdk-linux
- linux64-rust-android
- linux64-rust-size
- linux64-cbindgen
- linux64-nasm
- linux64-node
android-api-16/debug:
description: "Android 4.0 api-16+ Debug"
index:
job-name: android-api-16-debug
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-4-0-armv7-api16/debug
symbol: B
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: api-16-debug
fetches:
toolchain:
- linux64-clang
- linux64-sccache
android-x86/opt:
description: "Android 4.2 x86 Opt"
index:
job-name: android-x86-opt
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-4-2-x86/opt
symbol: B
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: x86
fetches:
toolchain:
- linux64-clang
- linux64-sccache
android-x86-fuzzing/debug:
description: "Android x86 Fuzzing Debug"
index:
job-name: android-x86-fuzzing-debug
treeherder:
platform: android-4-2-x86/debug
symbol: Bf
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: x86-fuzzing-debug
fetches:
toolchain:
- linux64-clang
- linux64-sccache
optimization:
build-fuzzing:
- android
android-x86-nightly/opt:
description: "Android 4.2 x86 Nightly"
attributes:
enable-full-crashsymbols: true
nightly: true
# Android nightlies don't run tests in gecko, but are needed for github projects
skip-verify-test-packaging: true
shipping-phase: build
shipping-product: fennec
index:
job-name: android-x86-opt
type: android-nightly
treeherder:
platform: android-4-2-x86/opt
symbol: N
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
run:
actions: [get-secrets, build, multi-l10n]
config:
- builds/releng_base_android_64_builds.py
- taskcluster_nightly.py
custom-build-variant-cfg: x86
fetches:
toolchain:
- linux64-clang
android-api-16/opt:
description: "Android 4.0 api-16+ Opt"
index:
job-name: android-api-16-opt
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-4-0-armv7-api16/opt
symbol: B
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: api-16
fetches:
toolchain:
- linux64-clang
- linux64-sccache
android-api-16/pgo:
description: "Android 4.0 api-16+ PGO"
use-pgo: true
index:
job-name: android-api-16-pgo
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-4-0-armv7-api16/pgo
symbol: Bpgo(B)
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: api-16
fetches:
toolchain:
- linux64-clang
android-api-16-nightly/opt:
description: "Android 4.0 api-16+ Nightly"
use-pgo: android-api-16/pgo
attributes:
enable-full-crashsymbols: true
nightly: true
# Android nightlies don't run tests in gecko, but are needed for github projects
skip-verify-test-packaging: true
shipping-phase: build
shipping-product: fennec
index:
job-name: android-api-16-opt
type: android-nightly-with-multi-l10n
treeherder:
platform: android-4-0-armv7-api16/opt
symbol: N
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
run:
actions: [get-secrets, build, multi-l10n]
config:
- builds/releng_base_android_64_builds.py
- taskcluster_nightly.py
custom-build-variant-cfg: api-16
fetches:
toolchain:
- linux64-clang
android-aarch64/opt:
description: "Android 5.0 AArch64 Opt"
index:
job-name: android-aarch64-opt
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-5-0-aarch64/opt
symbol: B
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: aarch64
fetches:
toolchain:
- linux64-clang
- linux64-sccache
android-aarch64/pgo:
description: "Android 5.0 AArch64 PGO"
use-pgo: android-api-16/pgo
index:
job-name: android-aarch64-pgo
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-5-0-aarch64/pgo
symbol: Bpgo(B)
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: aarch64
fetches:
toolchain:
- linux64-clang
android-aarch64/debug:
description: "Android 5.0 AArch64 Debug"
index:
job-name: android-aarch64-debug
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-5-0-aarch64/debug
symbol: B
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: aarch64-debug
fetches:
toolchain:
- linux64-clang
- linux64-sccache
android-aarch64-nightly/opt:
description: "Android 5.0 AArch64 Nightly"
use-pgo: android-api-16/pgo
attributes:
enable-full-crashsymbols: true
nightly: true
# Android nightlies don't run tests in gecko, but are needed for github projects
skip-verify-test-packaging: true
shipping-phase: build
shipping-product: fennec
index:
job-name: android-aarch64-opt
type: android-nightly
treeherder:
platform: android-5-0-aarch64/opt
symbol: N
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
run:
actions: [get-secrets, build, multi-l10n]
config:
- builds/releng_base_android_64_builds.py
- taskcluster_nightly.py
custom-build-variant-cfg: aarch64
fetches:
toolchain:
- linux64-clang
android-x86_64/opt:
description: "Android 5.0 x86-64 Opt"
index:
job-name: android-x86_64-opt
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-5-0-x86_64/opt
symbol: B
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: x86_64
fetches:
toolchain:
- linux64-clang
- linux64-sccache
android-x86_64-nightly/opt:
description: "Android 5.0 x86-64 Nightly"
attributes:
enable-full-crashsymbols: true
nightly: true
# Android nightlies don't run tests in gecko, but are needed for github projects
skip-verify-test-packaging: true
shipping-phase: build
shipping-product: fennec
index:
job-name: android-x86_64-opt
type: android-nightly
treeherder:
platform: android-5-0-x86_64/opt
symbol: N
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
run:
actions: [get-secrets, build, multi-l10n]
config:
- builds/releng_base_android_64_builds.py
- taskcluster_nightly.py
custom-build-variant-cfg: x86_64
fetches:
toolchain:
- linux64-clang
android-x86_64/debug:
description: "Android 5.0 x86-64 Debug"
index:
job-name: android-x86_64-debug
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-5-0-x86_64/debug
symbol: B
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: x86_64-debug
fetches:
toolchain:
- linux64-clang
- linux64-sccache
android-api-16-gcp/debug:
description: "Android 4.0 api-16+ Debug - built on GCP"
index:
job-name: android-api-16-gcp-debug
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-4-0-armv7-api16/debug
symbol: Bg
tier: 3
worker-type: b-linux-gcp
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
PERFHERDER_EXTRA_OPTIONS: gcp
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: api-16-debug
fetches:
toolchain:
- linux64-clang
- linux64-sccache
android-x86-gcp/opt:
description: "Android 4.2 x86 Opt - built on GCP"
index:
job-name: android-x86-gcp-opt
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-4-2-x86/opt
symbol: Bg
tier: 3
worker-type: b-linux-gcp
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
PERFHERDER_EXTRA_OPTIONS: gcp
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: x86
fetches:
toolchain:
- linux64-clang
- linux64-sccache
android-api-16-gcp/opt:
description: "Android 4.0 api-16+ Opt - built on GCP"
index:
job-name: android-api-16-gcp-opt
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-4-0-armv7-api16/opt
symbol: Bg
tier: 3
worker-type: b-linux-gcp
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
PERFHERDER_EXTRA_OPTIONS: gcp
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: api-16
fetches:
toolchain:
- linux64-clang
- linux64-sccache
android-aarch64-gcp/opt:
description: "Android 5.0 AArch64 Opt - built on GCP"
index:
job-name: android-aarch64-gcp-opt
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-5-0-aarch64/opt
symbol: Bg
tier: 3
worker-type: b-linux-gcp
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
PERFHERDER_EXTRA_OPTIONS: gcp
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: aarch64
fetches:
toolchain:
- linux64-clang
- linux64-sccache
android-aarch64-gcp/debug:
description: "Android 5.0 AArch64 Debug - built on GCP"
index:
job-name: android-aarch64-gcp-debug
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-5-0-aarch64/debug
symbol: Bg
tier: 3
worker-type: b-linux-gcp
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
PERFHERDER_EXTRA_OPTIONS: gcp
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: aarch64-debug
fetches:
toolchain:
- linux64-clang
- linux64-sccache
android-x86_64-gcp/opt:
description: "Android 5.0 x86-64 Opt - built on GCP"
index:
job-name: android-x86_64-gcp-opt
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-5-0-x86_64/opt
symbol: Bg
tier: 3
worker-type: b-linux-gcp
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
PERFHERDER_EXTRA_OPTIONS: gcp
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: x86_64
fetches:
toolchain:
- linux64-clang
- linux64-sccache
android-x86_64-gcp/debug:
description: "Android 5.0 x86-64 Debug - built on GCP"
index:
job-name: android-x86_64-gcp-debug
attributes:
enable-full-crashsymbols: true
treeherder:
platform: android-5-0-x86_64/debug
symbol: Bg
tier: 3
worker-type: b-linux-gcp
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
PERFHERDER_EXTRA_OPTIONS: gcp
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: x86_64-debug
fetches:
toolchain:
- linux64-clang
android-x86_64-asan-fuzzing/opt:
description: "Android 5.0 x86-64 Fuzzing Opt ASAN"
index:
job-name: android-x86_64-fuzzing-asan
treeherder:
platform: android-5-0-x86_64/asan
symbol: Bof
worker-type: b-linux
worker:
env:
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
run:
actions: [get-secrets, build]
config: ["builds/releng_base_android_64_builds.py"]
custom-build-variant-cfg: x86_64-fuzzing-asan
fetches:
toolchain:
- linux64-clang-android-cross
- linux64-sccache
optimization:
build-fuzzing:
- android