Bug 1419581 - Part 6: Add Android build configuration --without-google-play-services. r=dustin draft
authorNick Alexander <nalexander@mozilla.com>
Thu, 04 Jan 2018 15:45:56 -0800
changeset 747341 4de338a5f8442159b3e80f492b9ff0f46f5635d9
parent 747340 17a25d2a15868f3661248a06b9048741e5a1dca5
child 747382 cfbf5df118fab582440cee122b754b49e6b53923
push id96881
push usernalexander@mozilla.com
push dateThu, 25 Jan 2018 22:25:52 +0000
reviewersdustin
bugs1419581
milestone60.0a1
Bug 1419581 - Part 6: Add Android build configuration --without-google-play-services. r=dustin MozReview-Commit-ID: 526BCiQwlm6
mobile/android/config/mozconfigs/android-api-16/nightly-without-google-play-services
taskcluster/ci/build/android.yml
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_without_google_play_services.py
testing/mozharness/mozharness/mozilla/building/buildbase.py
copy from mobile/android/config/mozconfigs/android-api-16/nightly-artifact
copy to mobile/android/config/mozconfigs/android-api-16/nightly-without-google-play-services
--- a/mobile/android/config/mozconfigs/android-api-16/nightly-artifact
+++ b/mobile/android/config/mozconfigs/android-api-16/nightly-without-google-play-services
@@ -1,14 +1,12 @@
 . "$topsrcdir/build/mozconfig.artifact.automation"
 
-NO_CACHE=1
-NO_NDK=1
-
 . "$topsrcdir/mobile/android/config/mozconfigs/common"
 
 . "$topsrcdir/mobile/android/config/mozconfigs/android-api-16/nightly"
 
-. "$topsrcdir/build/mozconfig.artifact"
+ac_add_options --without-google-play-services
 
-ac_add_options --enable-artifact-build-symbols
+unset MOZ_ANDROID_MMA
+unset MOZ_ANDROID_POCKET
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common.override"
--- a/taskcluster/ci/build/android.yml
+++ b/taskcluster/ci/build/android.yml
@@ -197,16 +197,65 @@ android-api-16/opt:
     toolchains:
         - android-gradle-dependencies
         - android-sdk-linux
         - linux64-clang
         - linux64-rust-android
         - linux64-sccache
         - proguard-jar
 
+android-api-16-without-google-play-services/opt:
+    description: "Android 4.0 api-16+ (without Google Play Services) Opt"
+    index:
+        product: mobile
+        job-name: android-api-16-without-google-play-services-opt
+    treeherder:
+        platform: android-4-0-armv7-api16/opt
+        symbol: BnoGPS
+    worker-type: aws-provisioner-v1/gecko-{level}-b-android
+    worker:
+        docker-image: {in-tree: android-build}
+        max-run-time: 7200
+        env:
+            GRADLE_USER_HOME: "/builds/worker/workspace/build/src/mobile/android/gradle/dotgradle-offline"
+            PERFHERDER_EXTRA_OPTIONS: android-api-16-without-google-play-services
+            TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
+        artifacts:
+            - name: public/android/R
+              path: /builds/worker/workspace/build/src/obj-firefox/gradle/build/mobile/android/app/R
+              type: directory
+            - name: public/android/maven
+              path: /builds/worker/workspace/build/src/obj-firefox/gradle/build/mobile/android/geckoview/maven/
+              type: directory
+            - name: public/build/geckoview_example.apk
+              path: /builds/worker/workspace/build/src/obj-firefox/gradle/build/mobile/android/geckoview_example/outputs/apk/geckoview_example-withGeckoBinaries.apk
+              type: file
+            - name: public/build
+              path: /builds/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"
+        secrets: true
+        custom-build-variant-cfg: api-16-without-google-play-services
+        tooltool-downloads: internal
+    run-on-projects: ['mozilla-central']
+    toolchains:
+        - android-gradle-dependencies
+        - android-sdk-linux
+        - linux64-clang
+        - linux64-rust-android
+        - linux64-sccache
+        - proguard-jar
+
 android-api-16-nightly/opt:
     description: "Android 4.0 api-16+ Nightly"
     attributes:
         nightly: true
     shipping-phase: promote
     shipping-product: fennec
     index:
         product: mobile
copy from testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16.py
copy to testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_without_google_play_services.py
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_without_google_play_services.py
@@ -1,8 +1,8 @@
 config = {
-    'base_name': 'Android armv7 api-16+ %(branch)s',
+    'base_name': 'Android armv7 api-16+ %(branch)s --without-google-play-services',
     'stage_platform': 'android-api-16',
     'build_type': 'api-16-opt',
-    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16/nightly',
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16/nightly-without-google-play-services',
     'multi_locale_config_platform': 'android',
-    'artifact_flag_build_variant_in_try': 'api-16-artifact',
+    'artifact_flag_build_variant_in_try': None, # There's no artifact equivalent.
 }
--- a/testing/mozharness/mozharness/mozilla/building/buildbase.py
+++ b/testing/mozharness/mozharness/mozilla/building/buildbase.py
@@ -426,16 +426,17 @@ class BuildOptionParser(object):
         'api-16-gradle-dependencies': 'builds/releng_sub_%s_configs/%s_api_16_gradle_dependencies.py',
         'api-16': 'builds/releng_sub_%s_configs/%s_api_16.py',
         'api-16-old-id': 'builds/releng_sub_%s_configs/%s_api_16_old_id.py',
         'api-16-artifact': 'builds/releng_sub_%s_configs/%s_api_16_artifact.py',
         'api-16-debug': 'builds/releng_sub_%s_configs/%s_api_16_debug.py',
         'api-16-debug-artifact': 'builds/releng_sub_%s_configs/%s_api_16_debug_artifact.py',
         'api-16-gradle': 'builds/releng_sub_%s_configs/%s_api_16_gradle.py',
         'api-16-gradle-artifact': 'builds/releng_sub_%s_configs/%s_api_16_gradle_artifact.py',
+        'api-16-without-google-play-services': 'builds/releng_sub_%s_configs/%s_api_16_without_google_play_services.py',
         'rusttests': 'builds/releng_sub_%s_configs/%s_rusttests.py',
         'rusttests-debug': 'builds/releng_sub_%s_configs/%s_rusttests_debug.py',
         'x86': 'builds/releng_sub_%s_configs/%s_x86.py',
         'x86-old-id': 'builds/releng_sub_%s_configs/%s_x86_old_id.py',
         'x86-artifact': 'builds/releng_sub_%s_configs/%s_x86_artifact.py',
         'api-16-partner-sample1': 'builds/releng_sub_%s_configs/%s_api_16_partner_sample1.py',
         'aarch64': 'builds/releng_sub_%s_configs/%s_aarch64.py',
         'android-test': 'builds/releng_sub_%s_configs/%s_test.py',