Bug 1522581 - Publish GeckoView multi-architecture fat AAR Nightly. r=jlorenzo

Differential Revision: https://phabricator.services.mozilla.com/D15774

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Nick Alexander 2019-05-30 15:22:41 +00:00
Родитель aef9fc1900
Коммит ac0b60576d
7 изменённых файлов: 93 добавлений и 2 удалений

Просмотреть файл

@ -36,6 +36,7 @@ not-for-build-platforms:
- win64-aarch64-devedition-nightly/opt
- linux64-asan-reporter-nightly/opt
- win64-asan-reporter-nightly/opt
- android-geckoview-fat-aar-nightly/opt
job-template:
shipping-phase: promote

Просмотреть файл

@ -1305,3 +1305,76 @@ android-geckoview-fat-aar/opt:
- linux64-sccache
- linux64-nasm
- linux64-node
android-geckoview-fat-aar-nightly/opt:
description: "Android GeckoView multi-architecture fat AAR Nightly"
attributes:
nightly: true
enable-full-crashsymbols: true
disable-push-apk: true
disable-build-signing: true
shipping-phase: build
shipping-product: fennec
index:
product: mobile
job-name: android-geckoview-fat-aar-nightly
type: nightly-with-multi-l10n
treeherder:
platform: android-4-0-geckoview-fat-aar/opt
symbol: Ngv
worker-type: b-linux
dependencies:
android-x86-opt: build-android-x86-nightly/opt
android-x86_64-opt: build-android-x86_64-nightly/opt
android-api-16-opt: build-android-api-16-nightly/opt
android-aarch64-opt: build-android-aarch64-nightly/opt
worker:
docker-image: {in-tree: android-build}
max-run-time: 7200
env:
# Online in order to download the per-architecture AARs.
GRADLE_USER_HOME: "/builds/worker/workspace/build/src/mobile/android/gradle/dotgradle-online"
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
PERFHERDER_EXTRA_OPTIONS: android-geckoview-fat-aar-nightly
MOZ_ANDROID_FAT_AAR_ARCHITECTURES: 'armeabi-v7a,arm64-v8a,x86,x86_64'
MOZ_ARTIFACT_TASK_ANDROID_API_16_OPT: {task-reference: '<android-api-16-opt>'}
MOZ_ARTIFACT_TASK_ANDROID_AARCH64_OPT: {task-reference: '<android-aarch64-opt>'}
MOZ_ARTIFACT_TASK_ANDROID_X86_OPT: {task-reference: '<android-x86-opt>'}
MOZ_ARTIFACT_TASK_ANDROID_X86_64_OPT: {task-reference: '<android-x86_64-opt>'}
artifacts:
- name: public/android/maven
# TODO Bug 1433198. Remove the following entry once target.maven.zip is uploaded to a maven repository
path: /builds/worker/workspace/build/src/obj-firefox/gradle/build/mobile/android/geckoview/maven/
type: directory
- name: public/build/target.maven.zip
path: /builds/worker/workspace/build/src/obj-firefox/gradle/build/mobile/android/geckoview/target.maven.zip
type: file
- name: public/build/geckoview-androidTest.apk
path: /builds/worker/workspace/build/src/obj-firefox/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/build/src/obj-firefox/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
actions: [get-secrets, build, multi-l10n]
config:
- builds/releng_base_android_64_builds.py
- taskcluster_nightly.py
script: "mozharness/scripts/fx_desktop_build.py"
secrets: true
custom-build-variant-cfg: api-16
tooltool-downloads: internal
toolchains:
- android-gradle-dependencies
- android-ndk-linux
- android-sdk-linux
- linux64-clang
- linux64-rust-android
- linux64-rust-size
- linux64-cbindgen
- linux64-nasm
- linux64-node

Просмотреть файл

@ -305,3 +305,14 @@ Phabricator revision.
retrigger
=========
Whether the task can be retriggered, or if it needs to be re-run.
disable-push-apk
================
Some GeckoView-only Android tasks produce APKs that shouldn't be
pushed to the Google Play Store. Set this to ``true`` to disable
pushing.
disable-build-signing
=====================
Some GeckoView-only tasks produce APKs, but not APKs that should be
signed. Set this to ``true`` to disable APK signing.

Просмотреть файл

@ -33,4 +33,6 @@ def loader(kind, path, config, params, loaded_tasks):
if dependent_task.attributes.get('nightly') or \
dependent_task.attributes.get('shippable') or \
dependent_task.label in NON_NIGHTLY_LABELS_WHICH_SHOULD_SIGN_BUILDS:
yield job
# Bug 1522581: Some GeckoView-only tasks produce APKs that shouldn't be signed.
if not dependent_task.attributes.get('disable-build-signing', False):
yield job

Просмотреть файл

@ -35,7 +35,9 @@ def get_dependent_loaded_tasks(config, params, loaded_tasks):
)
android_tasks = (
task for task in tasks_with_matching_kind
if task.attributes.get('build_platform', '').startswith('android')
if task.attributes.get('build_platform', '').startswith('android') and
# Bug 1522581: Some GeckoView-only tasks produce APKs that shouldn't be pushed.
not task.attributes.get('disable-push-apk', False)
)
# XXX Bug 1368484: Aarch64 is not planned to ride the trains regularly. It stayed on central

Просмотреть файл

@ -453,6 +453,7 @@ def target_tasks_nightly_fennec(full_task_graph, parameters, graph_config):
'beetmover-geckoview-android-api-16-nightly/opt',
'beetmover-geckoview-android-x86-nightly/opt',
'beetmover-geckoview-android-x86_64-nightly/opt',
'beetmover-geckoview-android-fat-aar-nightly/opt',
)
return [l for l, t in full_task_graph.tasks.iteritems() if filter(t)]

Просмотреть файл

@ -27,6 +27,7 @@ _ARTIFACT_ID_PER_PLATFORM = {
'android-api-16': 'geckoview{update_channel}-armeabi-v7a',
'android-x86': 'geckoview{update_channel}-x86',
'android-x86_64': 'geckoview{update_channel}-x86_64',
'android-geckoview-fat-aar': 'geckoview{update_channel}',
}
_MOZ_UPDATE_CHANNEL_PER_BRANCH = {