element-android/build.gradle

127 lines
4.2 KiB
Groovy
Raw Normal View History

2019-07-16 20:13:48 +03:00
import javax.tools.JavaCompiler
2018-10-03 18:56:33 +03:00
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext.kotlin_version = '1.3.21'
2018-10-03 18:56:33 +03:00
repositories {
google()
jcenter()
2019-03-18 18:53:52 +03:00
maven {
url "https://plugins.gradle.org/m2/"
2019-05-07 15:02:15 +03:00
}
}
2018-10-03 18:56:33 +03:00
dependencies {
2019-05-23 20:12:06 +03:00
classpath 'com.android.tools.build:gradle:3.4.1'
classpath 'com.google.gms:google-services:4.2.0'
classpath "com.airbnb.okreplay:gradle-plugin:1.4.0"
2018-10-03 18:56:33 +03:00
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
2019-03-18 18:53:52 +03:00
classpath 'org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.6.2'
classpath 'com.google.android.gms:oss-licenses-plugin:0.9.5'
2018-10-03 18:56:33 +03:00
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
2019-07-11 15:03:20 +03:00
// For olm library. This has to be declared first, to ensure that Olm library is not downloaded from another repo
2019-05-16 11:23:57 +03:00
maven {
url 'https://jitpack.io'
2019-07-11 15:03:20 +03:00
content {
// Use this repo only for olm library
includeGroupByRegex "org\\.matrix\\.gitlab\\.matrix-org"
// And also for FilePicker
includeGroupByRegex "com\\.github\\.jaiselrahman"
// And monarchy
includeGroupByRegex "com\\.github\\.Zhuinden"
}
}
maven {
url "http://dl.bintray.com/piasy/maven"
content {
includeGroupByRegex "com\\.github\\.piasy"
}
2019-05-16 11:23:57 +03:00
}
2019-07-11 15:03:20 +03:00
maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
google()
jcenter()
maven {
url 'https://repo.adobe.com/nexus/content/repositories/public/'
content {
includeGroupByRegex "diff_match_patch"
}
}
2018-10-03 18:56:33 +03:00
}
2019-07-16 20:13:48 +03:00
tasks.withType(JavaCompile).all {
options.compilerArgs += [
'-Adagger.gradle.incremental=enabled'
]
}
afterEvaluate {
extensions.findByName("kapt")?.arguments {
arg("dagger.gradle.incremental", "enabled")
}
}
2018-10-03 18:56:33 +03:00
}
task clean(type: Delete) {
delete rootProject.buildDir
}
2019-03-18 18:53:52 +03:00
apply plugin: 'org.sonarqube'
// To run a sonar analysis:
// Run './gradlew sonarqube -Dsonar.login=<REPLACE_WITH_SONAR_KEY>'
// The SONAR_KEY is stored in passbolt
2019-03-18 18:53:52 +03:00
sonarqube {
properties {
property "sonar.projectName", "RiotX-Android"
property "sonar.projectKey", "vector.android.riotx"
property "sonar.host.url", "https://sonarcloud.io"
2019-03-19 16:38:15 +03:00
property "sonar.projectVersion", project(":vector").android.defaultConfig.versionName
2019-03-18 18:53:52 +03:00
property "sonar.sourceEncoding", "UTF-8"
property "sonar.links.homepage", "https://github.com/vector-im/riotX-android/"
2019-04-30 14:58:00 +03:00
property "sonar.links.ci", "https://buildkite.com/matrix-dot-org/riotx-android"
2019-03-18 18:53:52 +03:00
property "sonar.links.scm", "https://github.com/vector-im/riotX-android/"
property "sonar.links.issue", "https://github.com/vector-im/riotX-android/issues"
property "sonar.organization", "new_vector_ltd_organization"
property "sonar.login", project.hasProperty("SONAR_LOGIN") ? SONAR_LOGIN : "invalid"
}
}
2019-03-19 16:38:15 +03:00
project(":vector") {
2019-03-18 18:53:52 +03:00
sonarqube {
properties {
2019-03-19 16:38:15 +03:00
property "sonar.sources", project(":vector").android.sourceSets.main.java.srcDirs
2019-03-18 18:53:52 +03:00
// exclude source code from analyses separated by a colon (:)
// property "sonar.exclusions", "**/*.*"
}
}
}
//project(":matrix-sdk-android") {
// sonarqube {
// properties {
// property "sonar.sources", project(":matrix-sdk-android").android.sourceSets.main.java.srcDirs
// // exclude source code from analyses separated by a colon (:)
// // property "sonar.exclusions", "**/*.*"
// }
// }
//}
//
//project(":matrix-sdk-android-rx") {
// sonarqube {
// properties {
// property "sonar.sources", project(":matrix-sdk-android-rx").android.sourceSets.main.java.srcDirs
// // exclude source code from analyses separated by a colon (:)
// // property "sonar.exclusions", "**/*.*"
// }
// }
//}