2
0
mirror of https://github.com/fork-maintainers/iceraven-browser synced 2024-11-19 09:25:34 +00:00

[fenix] Split android-test build job into 2 so it can be signed with 2 different keys (https://github.com/mozilla-mobile/fenix/pull/6779)

This commit is contained in:
Johan Lorenzo 2019-11-26 16:20:35 +01:00 committed by Mihai Adrian
parent 056b94fb85
commit cf0b39a94e
5 changed files with 48 additions and 7 deletions

View File

@ -45,7 +45,7 @@ jobs:
treeherder: treeherder:
symbol: debug(B) symbol: debug(B)
android-test: android-test-debug:
attributes: attributes:
code-review: true code-review: true
run-on-tasks-for: [github-pull-request, github-push] run-on-tasks-for: [github-pull-request, github-push]
@ -56,7 +56,26 @@ jobs:
# 2 differences here: "androidTest/" is added and "{gradle_build_type}" is forced to "debug" # 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}' path: '/builds/worker/checkouts/src/app/build/outputs/apk/androidTest/{geckoview_engine}/debug/{fileName}'
treeherder: treeherder:
symbol: androidTest(B) 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: performance-test:
run: run:

View File

@ -2,7 +2,6 @@
trust-domain: mobile trust-domain: mobile
treeherder: treeherder:
group-names: group-names:
'androidTest': 'Tasks related to the androidTest APK'
'beta': 'Nightly-related tasks' 'beta': 'Nightly-related tasks'
'debug': 'Builds made for testing' 'debug': 'Builds made for testing'
'forPerformanceTest': 'Builds made for Raptor and other performance tests' 'forPerformanceTest': 'Builds made for Raptor and other performance tests'

View File

@ -16,7 +16,7 @@ job-template:
description: Sign Fenix description: Sign Fenix
worker-type: worker-type:
by-build-type: by-build-type:
(fennec-production|nightly|beta|production): (fennec-production|nightly|beta|production|android-test-nightly):
by-level: by-level:
'3': signing '3': signing
default: dep-signing default: dep-signing
@ -32,6 +32,10 @@ job-template:
by-level: by-level:
'3': nightly-signing '3': nightly-signing
default: dep-signing default: dep-signing
android-test-nightly:
by-level:
'3': nightly-signing
default: dep-signing
performance-test: dep-signing performance-test: dep-signing
beta: beta:
by-level: by-level:
@ -49,7 +53,10 @@ job-template:
default: {} default: {}
run-on-tasks-for: [] run-on-tasks-for: []
treeherder: treeherder:
job-symbol: Bs job-symbol:
by-build-type:
android-test.+: Bats
default: Bs
kind: build kind: build
platform: android-all/opt platform: android-all/opt
tier: 2 tier: 2

View File

@ -10,13 +10,13 @@ transforms:
- taskgraph.transforms.task:transforms - taskgraph.transforms.task:transforms
jobs: jobs:
x86: x86-debug:
attributes: attributes:
build-type: debug build-type: debug
code-review: true code-review: true
dependencies: dependencies:
signing: signing-debug signing: signing-debug
signing-android-test: signing-android-test signing-android-test: signing-android-test-debug
description: Test Fenix description: Test Fenix
include-pull-request-number: true include-pull-request-number: true
run-on-tasks-for: [github-pull-request, github-push] run-on-tasks-for: [github-pull-request, github-push]

View File

@ -8,6 +8,7 @@ Apply some defaults and minor modifications to the single_dep jobs.
from __future__ import absolute_import, print_function, unicode_literals from __future__ import absolute_import, print_function, unicode_literals
from taskgraph.transforms.base import TransformSequence from taskgraph.transforms.base import TransformSequence
from taskgraph.util.schema import resolve_keyed_by
from taskgraph.util.treeherder import inherit_treeherder_from_dep, join_symbol from taskgraph.util.treeherder import inherit_treeherder_from_dep, join_symbol
@ -32,6 +33,21 @@ def _get_dependent_job_name_without_its_kind(dependent_job):
return dependent_job.label[len(dependent_job.kind) + 1:] return dependent_job.label[len(dependent_job.kind) + 1:]
@transforms.add
def resolve_keys(config, tasks):
for task in tasks:
resolve_keyed_by(
task,
"treeherder.job-symbol",
item_name=task["name"],
**{
'build-type': task["attributes"]["build-type"],
'level': config.params["level"],
}
)
yield task
@transforms.add @transforms.add
def build_upstream_artifacts(config, tasks): def build_upstream_artifacts(config, tasks):
for task in tasks: for task in tasks: