# This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. --- # Just one TC job that runs all the lints. There's no real advantage # to running them separately, and this way we perform the expensive # clone and somewhat expensive compilation of the Android # intermediates just once. lints: always-target: true attributes: build_platform: android build_type: opt code-review: true description: Android lints platform: lint/opt treeherder: symbol: A(lints) kind: test tier: 1 worker-type: t-linux-xlarge-source worker: docker-image: {in-tree: android-build} env: GRADLE_USER_HOME: /builds/worker/checkouts/gecko/mobile/android/gradle/dotgradle-offline MOZCONFIG: mobile/android/config/mozconfigs/android-arm/nightly-android-lints MOZ_OBJDIR: obj-firefox PERFHERDER_EXTRA_OPTIONS: android-lints TINDERBOX_OUTPUT: '1' max-run-time: 3600 artifacts: - type: file name: public/code-review/mozlint.json path: /builds/worker/mozlint.json - name: public/android/geckoview/api.txt path: /builds/worker/checkouts/gecko/obj-firefox/gradle/build/mobile/android/geckoview/intermediates/javac/withGeckoBinariesDebug/classes/api.txt type: file - name: public/android/geckoview/api.txt.map path: /builds/worker/checkouts/gecko/obj-firefox/gradle/build/mobile/android/geckoview/intermediates/javac/withGeckoBinariesDebug/classes/api.txt.map type: file - name: public/android/geckoview/apilint-result.json path: /builds/worker/checkouts/gecko/obj-firefox/gradle/build/mobile/android/geckoview/intermediates/javac/withGeckoBinariesDebug/classes/apilint-result.json type: file - name: public/android/geckoview/javadoc-results.json path: /builds/worker/checkouts/gecko/obj-firefox/gradle/build/mobile/android/geckoview/reports/javadoc-results-withGeckoBinariesDebug.json type: file - name: public/geckoview/unittest path: /builds/worker/checkouts/gecko/obj-firefox/gradle/build/mobile/android/geckoview/reports/tests type: directory - name: public/android/lint/lint-results-officialWithoutGeckoBinariesDebug.html path: /builds/worker/checkouts/gecko/obj-firefox/gradle/build/mobile/android/geckoview/reports/lint-results-withGeckoBinariesDebug.html type: file - name: public/android/lint/lint-results-withGeckoBinariesDebug.xml path: /builds/worker/checkouts/gecko/obj-firefox/gradle/build/mobile/android/geckoview/reports/lint-results-withGeckoBinariesDebug.xml type: file - name: public/android/checkstyle/checkstyle.html path: /builds/worker/checkouts/gecko/obj-firefox/gradle/build/mobile/android/geckoview/reports/checkstyle/withGeckoBinariesDebug.html type: file - name: public/android/checkstyle/checkstyle.xml path: /builds/worker/checkouts/gecko/obj-firefox/gradle/build/mobile/android/geckoview/reports/checkstyle/withGeckoBinariesDebug.xml type: file run: using: run-task command: > ln -s $MOZ_FETCHES_DIR/android-gradle-dependencies $GECKO_PATH && ln -s $MOZ_FETCHES_DIR/android-sdk-linux $GECKO_PATH && ln -s $MOZ_FETCHES_DIR/node $GECKO_PATH && cd $GECKO_PATH && ./mach --log-no-times build pre-export export && ./mach --log-no-times lint -f treeherder -f json:/builds/worker/mozlint.json --linter android-api-lint --linter android-format --linter android-javadoc --linter android-checkstyle --linter android-lint --linter android-test * tooltool-downloads: internal # For internal toolchains. fetches: toolchain: # Aliases aren't allowed for toolchains installed by fetch. - linux64-android-gradle-dependencies - android-gradle-python-envs - linux64-android-sdk-linux-repack - linux64-jdk-repack - linux64-node when: files-changed: # Source files. - 'mobile/android/**/*.java' - 'mobile/android/**/*.kt' # Resources. - 'mobile/android/**/*.jpeg' - 'mobile/android/**/*.jpg' - 'mobile/android/**/*.png' - 'mobile/android/**/*.svg' - 'mobile/android/**/*.xml' # Build stuff. - 'mobile/android/**/Makefile.in' - 'mobile/android/config/**' - 'mobile/android/gradle.configure' - 'mobile/android/**/moz.build' - '**/*.gradle' # Other misc lint related files. - 'python/mozlint/**' - 'tools/lint/**'