mirror of
https://github.com/fork-maintainers/iceraven-browser
synced 2024-11-17 15:26:23 +00:00
169 lines
5.5 KiB
YAML
169 lines
5.5 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/.
|
|
---
|
|
loader: taskgraph.loader.transform:loader
|
|
|
|
transforms:
|
|
- fenix_taskgraph.transforms.build:transforms
|
|
- taskgraph.transforms.job:transforms
|
|
- taskgraph.transforms.task:transforms
|
|
|
|
kind-dependencies:
|
|
- toolchain
|
|
|
|
|
|
job-defaults:
|
|
# Builds generate multiple APKs with different ABIs. For each APK described
|
|
# by `gradlew printVariant`, an artifact will be generated. `variant` and
|
|
# the per-apk config from `printVariant` can be used as substitutions in
|
|
# `name` and `path`.
|
|
apk-artifact-template:
|
|
type: file
|
|
name: public/build/{abi}/{geckoview_engine}/target.apk
|
|
path: '/builds/worker/checkouts/src/app/build/outputs/apk/{geckoview_engine}/{gradle_build_type}/{fileName}'
|
|
description: Build Fenix from source code.
|
|
fetches:
|
|
toolchain:
|
|
- android-sdk-linux
|
|
run:
|
|
using: gradlew
|
|
use-caches: false
|
|
run-on-tasks-for: []
|
|
treeherder:
|
|
kind: build
|
|
symbol: B
|
|
platform: android-all/opt
|
|
tier: 1
|
|
worker-type: b-android
|
|
worker:
|
|
docker-image: {in-tree: base}
|
|
max-run-time: 7200
|
|
chain-of-trust: true
|
|
|
|
|
|
jobs:
|
|
debug:
|
|
attributes:
|
|
code-review: true
|
|
run-on-tasks-for: [github-pull-request, github-push]
|
|
run:
|
|
geckoview-engine: geckoNightly
|
|
gradle-build-type: debug
|
|
treeherder:
|
|
symbol: debug(B)
|
|
|
|
android-test-debug:
|
|
attributes:
|
|
code-review: true
|
|
run-on-tasks-for: [github-pull-request, github-push]
|
|
run:
|
|
geckoview-engine: geckoNightly
|
|
gradle-build-type: androidTest
|
|
apk-artifact-template:
|
|
# 2 differences here: "androidTest/" is added and "{gradle_build_type}" is forced to "debug"
|
|
path: '/builds/worker/checkouts/src/app/build/outputs/apk/androidTest/{geckoview_engine}/debug/{fileName}'
|
|
treeherder:
|
|
symbol: debug(Bat)
|
|
|
|
# android-test-nightly, while still being a debug build, is meant to be signed with the nightly
|
|
# 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.
|
|
android-test-nightly:
|
|
attributes:
|
|
nightly: true
|
|
run:
|
|
geckoview-engine: geckoNightly
|
|
gradle-build-type: androidTest
|
|
apk-artifact-template:
|
|
# 2 differences here: "androidTest/" is added and "{gradle_build_type}" is forced to "debug"
|
|
path: '/builds/worker/checkouts/src/app/build/outputs/apk/androidTest/{geckoview_engine}/debug/{fileName}'
|
|
treeherder:
|
|
symbol: nightly(Bat)
|
|
|
|
performance-test:
|
|
run:
|
|
geckoview-engine: geckoNightly
|
|
gradle-build-type: forPerformanceTest
|
|
treeherder:
|
|
symbol: forPerformanceTest(B)
|
|
|
|
nightly:
|
|
attributes:
|
|
nightly: true
|
|
include-nightly-version: true
|
|
include-shippable-secrets: true
|
|
run:
|
|
geckoview-engine: geckoNightly
|
|
gradle-build-type: fenixNightly
|
|
treeherder:
|
|
symbol: nightly(B)
|
|
|
|
beta:
|
|
attributes:
|
|
release-type: beta
|
|
include-release-version: true
|
|
include-shippable-secrets: true
|
|
filter-incomplete-translations: true
|
|
run:
|
|
geckoview-engine: geckoBeta
|
|
gradle-build-type: fenixBeta
|
|
run-on-tasks-for: [github-release]
|
|
treeherder:
|
|
symbol: beta(B)
|
|
|
|
production:
|
|
attributes:
|
|
release-type: production
|
|
include-release-version: true
|
|
include-shippable-secrets: true
|
|
filter-incomplete-translations: true
|
|
run:
|
|
geckoview-engine: geckoBeta
|
|
gradle-build-type: fenixProduction
|
|
run-on-tasks-for: [github-release]
|
|
treeherder:
|
|
symbol: production(B)
|
|
|
|
fennec-nightly:
|
|
attributes:
|
|
nightly: true
|
|
include-nightly-version: true
|
|
include-shippable-secrets: true
|
|
run:
|
|
geckoview-engine: geckoNightly
|
|
gradle-build-type: fennecNightly
|
|
treeherder:
|
|
symbol: nightlyFennec(B)
|
|
|
|
fennec-beta:
|
|
attributes:
|
|
release-type: beta
|
|
include-release-version: true
|
|
include-shippable-secrets: true
|
|
filter-incomplete-translations: true
|
|
run:
|
|
geckoview-engine: geckoBeta
|
|
gradle-build-type: fennecBeta
|
|
treeherder:
|
|
symbol: betaFennec(B)
|
|
|
|
fennec-production:
|
|
attributes:
|
|
# TODO replace `nightly: true` by `release-type: production` once the data migration
|
|
# testing is over
|
|
# TODO when making the above change, uncomment `filter-incomplete-translations: true`
|
|
nightly: true
|
|
include-release-version: true
|
|
include-shippable-secrets: true
|
|
# filter-incomplete-translations: true
|
|
run:
|
|
geckoview-engine: geckoBeta
|
|
gradle-build-type: fennecProduction
|
|
treeherder:
|
|
symbol: productionFennec(B)
|