Bug 1500941 - Add searchfox task for Android (ARMv7/API16). r=nalexander
authorKartikaya Gupta <kgupta@mozilla.com>
Fri, 22 Feb 2019 11:31:58 +0000
changeset 518616 6e669b1b18355464ae76b94c4f1c89888f77c734
parent 518615 9d6224e1d015e83fa9acd81cbe6e310a7cd5358d
child 518617 10ffd49d0adfd93c6b939fe65330a27a43e047af
push id10862
push userffxbld-merge
push dateMon, 11 Mar 2019 13:01:11 +0000
treeherdermozilla-beta@a2e7f5c935da [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersnalexander
bugs1500941
milestone67.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1500941 - Add searchfox task for Android (ARMv7/API16). r=nalexander The bulk of this is copy/pasted from a standard android-api-16 debug build. The only changes are a few extra environment variables in the taskcluster config, the subconfig file, and the mozconfig, as well as the --enable-mozsearch-plugin flag in the mozconfig. Depends on D20766 Differential Revision: https://phabricator.services.mozilla.com/D20767
mobile/android/config/mozconfigs/android-api-16/debug-searchfox
taskcluster/ci/searchfox/kind.yml
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug_searchfox.py
testing/mozharness/mozharness/mozilla/building/buildbase.py
new file mode 100644
--- /dev/null
+++ b/mobile/android/config/mozconfigs/android-api-16/debug-searchfox
@@ -0,0 +1,25 @@
+. "$topsrcdir/mobile/android/config/mozconfigs/common"
+
+# Global options
+ac_add_options --enable-debug
+
+# Android
+# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
+# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
+# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
+# If you think you can't handle the whole set of changes, please reach out to the Release
+# Engineering team.
+ac_add_options --with-android-min-sdk=16
+ac_add_options --target=arm-linux-androideabi
+
+export MOZILLA_OFFICIAL=1
+export MOZ_TELEMETRY_REPORTING=1
+
+ac_add_options --with-branding=mobile/android/branding/nightly
+
+# Save rust analysis (this requires unlocking the unstable features,
+# which is done in the taskcluster task definition via RUSTC_BOOTSTRAP)
+export RUSTFLAGS="-Zsave-analysis"
+ac_add_options --enable-mozsearch-plugin
+
+. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
--- a/taskcluster/ci/searchfox/kind.yml
+++ b/taskcluster/ci/searchfox/kind.yml
@@ -113,8 +113,44 @@ jobs:
                 - builds/taskcluster_base_win64.py
                 - builds/taskcluster_sub_win64/searchfox_debug.py
         toolchains:
             - win64-clang-cl
             - win64-node
             - win64-rust
             - win64-cbindgen
             - win64-nasm
+
+    android-armv7-searchfox/debug:
+        description: "Android ARMv7 Debug Searchfox"
+        index:
+            job-name: android-armv7-searchfox-debug
+        treeherder:
+            platform: android-4-0-armv7-api16/debug
+        worker-type: aws-provisioner-v1/gecko-{level}-b-android
+        worker:
+            docker-image: {in-tree: android-build}
+            max-run-time: 36000
+            env:
+                PERFHERDER_EXTRA_OPTIONS: searchfox
+                RUSTC_BOOTSTRAP: "1"
+                MOZSEARCH_PLATFORM: "android-armv7"
+                GRADLE_USER_HOME: "/builds/worker/workspace/build/src/mobile/android/gradle/dotgradle-offline"
+                TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
+        run:
+            using: mozharness
+            actions: [get-secrets, build]
+            config:
+                - builds/releng_base_android_64_builds.py
+            script: "mozharness/scripts/fx_desktop_build.py"
+            secrets: true
+            custom-build-variant-cfg: api-16-debug-searchfox
+            tooltool-downloads: internal
+        toolchains:
+            - android-gradle-dependencies
+            - android-ndk-linux
+            - android-sdk-linux
+            - linux64-clang
+            - linux64-rust-android
+            - linux64-rust-size
+            - linux64-cbindgen
+            - linux64-sccache
+            - linux64-node
new file mode 100644
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug_searchfox.py
@@ -0,0 +1,9 @@
+config = {
+    'stage_platform': 'android-api-16-debug',
+    'env': {
+        'SCCACHE_DISABLE': '1',
+    },
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16/debug-searchfox',
+    'multi_locale_config_platform': 'android',
+    'debug_build': True,
+}
--- a/testing/mozharness/mozharness/mozilla/building/buildbase.py
+++ b/testing/mozharness/mozharness/mozilla/building/buildbase.py
@@ -368,16 +368,17 @@ class BuildOptionParser(object):
         'noopt-debug': 'builds/releng_sub_%s_configs/%s_noopt_debug.py',
         '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-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-ccov': 'builds/releng_sub_%s_configs/%s_api_16_debug_ccov.py',
         'api-16-debug-artifact': 'builds/releng_sub_%s_configs/%s_api_16_debug_artifact.py',
+        'api-16-debug-searchfox': 'builds/releng_sub_%s_configs/%s_api_16_debug_searchfox.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-artifact': 'builds/releng_sub_%s_configs/%s_x86_artifact.py',