Bug 1320079 - Add configuration for running findbugs in automation. r?maliu,dustin
MozReview-Commit-ID: FINUdlHCntT
--- a/taskcluster/ci/android-stuff/kind.yml
+++ b/taskcluster/ci/android-stuff/kind.yml
@@ -226,8 +226,59 @@ jobs:
scopes:
- docker-worker:relengapi-proxy:tooltool.download.internal
- docker-worker:relengapi-proxy:tooltool.download.public
when:
files-changed:
- "mobile/android/**/checkstyle.xml"
- "mobile/android/**/*.gradle"
- "mobile/android/**/*.java"
+
+ android-findbugs:
+ description: "Android findbugs"
+ attributes:
+ build_platform: android-findbugs
+ build_type: opt
+ treeherder:
+ platform: android-4-0-armv7-api15/opt
+ kind: build
+ tier: 2
+ symbol: tc(findbugs)
+ worker-type: aws-provisioner-v1/gecko-{level}-b-android
+ worker:
+ implementation: docker-worker
+ docker-image: {in-tree: desktop-build}
+ env:
+ GRADLE_USER_HOME: "/home/worker/workspace/build/src/dotgradle"
+ MH_BUILD_POOL: "taskcluster"
+ MH_CUSTOM_BUILD_VARIANT_CFG: "android-findbugs"
+ MOZHARNESS_ACTIONS: "get-secrets build multi-l10n update"
+ MOZHARNESS_CONFIG: >
+ builds/releng_base_android_64_builds.py
+ disable_signing.py
+ platform_supports_post_upload_to_latest.py
+ MOZHARNESS_SCRIPT: "mozharness/scripts/fx_desktop_build.py"
+ TOOLTOOL_REPO: "https://github.com/mozilla/build-tooltool"
+ TOOLTOOL_REV: "master"
+ artifacts:
+ - name: public/android/findbugs/findbugs-report.html
+ path: /home/worker/workspace/build/src/obj-firefox/gradle/build/mobile/android/app/outputs/findbugs/findbugs-automationDebug-output.html
+ type: file
+ - name: public/build
+ path: /home/worker/artifacts/
+ type: directory
+ caches:
+ - name: tooltool-cache
+ mount-point: /home/worker/tooltool-cache
+ type: persistent
+ relengapi-proxy: true
+ command:
+ # NOTE: this could probably be a job description with run.using = 'mozharness'
+ - "/bin/bash"
+ - "bin/build.sh"
+ max-run-time: 36000
+ scopes:
+ - docker-worker:relengapi-proxy:tooltool.download.internal
+ - docker-worker:relengapi-proxy:tooltool.download.public
+ when:
+ files-changed:
+ - "mobile/android/**/*.gradle"
+ - "mobile/android/**/*.java"
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle_dependencies.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle_dependencies.py
@@ -6,16 +6,17 @@ config = {
'tooltool_manifest_src': 'mobile/android/config/tooltool-manifests/android-gradle-dependencies/releng.manifest',
'multi_locale_config_platform': 'android',
'postflight_build_mach_commands': [
['gradle',
'assembleAutomationRelease',
'assembleAutomationDebug',
'assembleAutomationDebugAndroidTest',
'checkstyle',
+ 'findbugsAutomationDebug',
# Does not include Gecko binaries -- see mobile/android/gradle/with_gecko_binaries.gradle.
'geckoview:assembleWithoutGeckoBinaries',
# So that we pick up the test dependencies for the builders.
'geckoview_example:assembleWithoutGeckoBinaries',
'geckoview_example:assembleWithoutGeckoBinariesAndroidTest',
],
],
}
new file mode 100644
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_findbugs.py
@@ -0,0 +1,11 @@
+config = {
+ 'base_name': 'Android findbugs %(branch)s',
+ 'stage_platform': 'android-findbugs',
+ 'build_type': 'api-15-opt',
+ 'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15-frontend/nightly',
+ 'tooltool_manifest_src': 'mobile/android/config/tooltool-manifests/android-frontend/releng.manifest',
+ 'multi_locale_config_platform': 'android',
+ 'postflight_build_mach_commands': [
+ ['gradle', 'app:findbugsAutomationDebug'],
+ ],
+}
--- a/testing/mozharness/mozharness/mozilla/building/buildbase.py
+++ b/testing/mozharness/mozharness/mozilla/building/buildbase.py
@@ -362,16 +362,17 @@ class BuildOptionParser(object):
'api-15': 'builds/releng_sub_%s_configs/%s_api_15.py',
'api-15-debug': 'builds/releng_sub_%s_configs/%s_api_15_debug.py',
'api-15-gradle': 'builds/releng_sub_%s_configs/%s_api_15_gradle.py',
'x86': 'builds/releng_sub_%s_configs/%s_x86.py',
'api-15-partner-sample1': 'builds/releng_sub_%s_configs/%s_api_15_partner_sample1.py',
'android-test': 'builds/releng_sub_%s_configs/%s_test.py',
'android-checkstyle': 'builds/releng_sub_%s_configs/%s_checkstyle.py',
'android-lint': 'builds/releng_sub_%s_configs/%s_lint.py',
+ 'android-findbugs': 'builds/releng_sub_%s_configs/%s_findbugs.py',
'valgrind' : 'builds/releng_sub_%s_configs/%s_valgrind.py',
'artifact': 'builds/releng_sub_%s_configs/%s_artifact.py',
'debug-artifact': 'builds/releng_sub_%s_configs/%s_debug_artifact.py',
}
build_pool_cfg_file = 'builds/build_pool_specifics.py'
branch_cfg_file = 'builds/branch_specifics.py'
@classmethod