diff options
Diffstat (limited to 'taskcluster/kinds/build-components/kind.yml')
-rw-r--r-- | taskcluster/kinds/build-components/kind.yml | 135 |
1 files changed, 135 insertions, 0 deletions
diff --git a/taskcluster/kinds/build-components/kind.yml b/taskcluster/kinds/build-components/kind.yml new file mode 100644 index 0000000000..52793cb3f1 --- /dev/null +++ b/taskcluster/kinds/build-components/kind.yml @@ -0,0 +1,135 @@ +# 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/. +--- +loader: android_taskgraph.loader.build_config:components_loader + +transforms: + - android_taskgraph.transforms.build_components:transforms + - gecko_taskgraph.transforms.build_schedules:transforms + - gecko_taskgraph.transforms.job:transforms + - gecko_taskgraph.transforms.task:transforms + +not-for-components: + - samples-browser # Their configs are too different, so they're handled in a specific kind + +kind-dependencies: + - toolchain + - build-fat-aar + +job-defaults: + artifact-template: + type: file + name: public/build/{artifact_file_name} + path: '/builds/worker/checkouts/gecko/mobile/android/android-components/{component_path}/build/maven/org/mozilla/components/{component}/{version}/{artifact_file_name}' + tests-artifact-template: + type: directory + name: public/reports/tests + path: '/builds/worker/checkouts/gecko/mobile/android/android-components/{component_path}/build/reports/tests' + lint-artifact-template: + type: file + name: public/reports/lint-results-release.html + path: '/builds/worker/checkouts/gecko/mobile/android/android-components/{component_path}/build/reports/lint-results-release.html' + jacoco-coverage-template: + type: directory + name: public/reports/jacoco + path: '/builds/worker/checkouts/gecko/mobile/android/android-components/{component_path}/build/reports/jacoco' + description: Execute Gradle tasks for component "{component}" + fetches: + toolchain: + - android-sdk-linux + - android-gradle-dependencies + - linux64-jdk + build-fat-aar: + - target.maven.tar.xz + attributes: + build_platform: android + dependencies: + build-fat-aar: + by-build-type: + release|nightly|beta: build-fat-aar-android-geckoview-fat-aar-shippable/opt + default: build-fat-aar-android-geckoview-fat-aar/opt + include-coverage: + by-build-type: + release: false + beta: false + nightly: false + default: true + run: + gradlew: + by-build-type: + release: + - ':{component}:assembleRelease' + - ':{component}:testRelease' + - ':{component}:lintRelease' + - ':{component}:publish' + beta: + # /!\ Beta builds are considered Release in gradle + - ':{component}:assembleRelease' + - ':{component}:testRelease' + - ':{component}:lintRelease' + - ':{component}:publish' + nightly: + - '-PnightlyVersion={nightlyVersion}' + - ':{component}:assembleRelease' + - ':{component}:testRelease' + - ':{component}:lintRelease' + - ':{component}:publish' + default: + by-component: + # No lintRelease on this task, gradle task isn't defined + tooling-lint: + - ':{component}:assemble' + - ':{component}:assembleAndroidTest' + - ':{component}:test' + - ':{component}:lint' + # No testRelease on this task, gradle task isn't defined + tooling-detekt: + - ':{component}:assemble' + - ':{component}:assembleAndroidTest' + - ':{component}:test' + - ':{component}:lintRelease' + # No publish on these tasks + tooling-fetch-tests|samples-.*: + - ':{component}:assemble' + - ':{component}:assembleAndroidTest' + - ':{component}:testRelease' + - ':{component}:lintRelease' + default: + - ':{component}:assemble' + - ':{component}:assembleAndroidTest' + - ':{component}:testRelease' + - ':{component}:lintRelease' + - ':{component}:publish' + pre-gradlew: + - ["cd", "mobile/android/android-components"] + using: gradlew + use-caches: false + run-on-projects: + by-build-type: + release: [] + beta: [] + nightly: [] + default: [all] + shipping-phase: + by-build-type: + (nightly|beta|release): promote + default: null + shipping-product: firefox-android + treeherder: + kind: build + symbol: + by-build-type: + release: '{treeherder_group}(BR)' + beta: '{treeherder_group}(BB)' + nightly: '{treeherder_group}(BN)' + default: '{treeherder_group}(B)' + platform: AC-android-all/opt + tier: 1 + worker-type: b-linux-medium-gcp + worker: + chain-of-trust: true + docker-image: {in-tree: android-components} + max-run-time: 1200 + env: + ANDROID_SDK_ROOT: /builds/worker/fetches/android-sdk-linux |