Bug 1291363 - Make Gradle and Gradle Artifacts builds produce GeckoView AAR. r=chmanchester
We also include the example APK, since it will be helpful to be able
to regression test the example without downloading the AAR and
manually building the example with that AAR.
MozReview-Commit-ID: CMtA1FRS0Rf
--- a/taskcluster/ci/build/android.yml
+++ b/taskcluster/ci/build/android.yml
@@ -111,20 +111,28 @@ android-api-15-gradle/opt:
tier: 2
worker-type: aws-provisioner-v1/android-api-15
worker:
implementation: docker-worker
max-run-time: 7200
env:
# Bug 1292762 - Set GRADLE_USER_HOME to avoid sdk-manager-plugin intermittent
GRADLE_USER_HOME: /home/worker/workspace/build/src/dotgradle
+ artifacts:
+ - name: public/android/geckoview.aar
+ path: /home/worker/workspace/build/src/obj-firefox/gradle/build/mobile/android/geckoview/outputs/aar/geckoview-withGeckoBinaries.aar
+ type: file
+ - name: public/android/geckoview_example.apk
+ path: /home/worker/workspace/build/src/obj-firefox/gradle/build/mobile/android/geckoview_example/outputs/apk/geckoview_example-debug.aar
+ type: file
+ - name: public/build
+ path: /home/worker/artifacts/
+ type: directory
run:
using: mozharness
actions: [get-secrets build multi-l10n update]
config:
- builds/releng_base_android_64_builds.py
- disable_signing.py
- platform_supports_post_upload_to_latest.py
script: "mozharness/scripts/fx_desktop_build.py"
custom-build-variant-cfg: api-15-gradle
tooltool-downloads: internal
-
-
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle.py
@@ -1,8 +1,17 @@
config = {
'base_name': 'Android armv7 API 15+ %(branch)s Gradle',
'stage_platform': 'android-api-15-gradle',
'build_type': 'api-15-gradle',
'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15-gradle/nightly',
'tooltool_manifest_src': 'mobile/android/config/tooltool-manifests/android/releng.manifest',
'multi_locale_config_platform': 'android',
+ # It's not obvious, but postflight_build is after packaging, so the Gecko
+ # binaries are in the object directory, ready to be packaged into the
+ # GeckoView AAR.
+ 'postflight_build_mach_commands': [
+ ['gradle',
+ 'geckoview:assembleWithGeckoBinaries',
+ 'geckoview_example:assembleDebug',
+ ],
+ ],
}
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle_artifact.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle_artifact.py
@@ -1,8 +1,17 @@
config = {
'base_name': 'Android armv7 API 15+ %(branch)s Gradle Artifact build',
'stage_platform': 'android-api-15-gradle',
'build_type': 'api-15-gradle',
'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15-gradle/artifact',
'tooltool_manifest_src': 'mobile/android/config/tooltool-manifests/android/releng.manifest',
'multi_locale_config_platform': 'android',
+ # It's not obvious, but postflight_build is after packaging, so the Gecko
+ # binaries are in the object directory, ready to be packaged into the
+ # GeckoView AAR.
+ 'postflight_build_mach_commands': [
+ ['gradle',
+ 'geckoview:assembleWithGeckoBinaries',
+ 'geckoview_example:assembleDebug',
+ ],
+ ],
}