2018-10-03 23:56:33 +08:00
|
|
|
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
|
|
|
|
|
|
|
buildscript {
|
2020-10-06 18:33:40 +08:00
|
|
|
// Ref: https://kotlinlang.org/releases.html
|
|
|
|
ext.kotlin_version = '1.4.10'
|
|
|
|
ext.kotlin_coroutines_version = "1.3.9"
|
2018-10-03 23:56:33 +08:00
|
|
|
repositories {
|
|
|
|
google()
|
|
|
|
jcenter()
|
2019-03-18 23:53:52 +08:00
|
|
|
maven {
|
|
|
|
url "https://plugins.gradle.org/m2/"
|
2019-05-07 20:02:15 +08:00
|
|
|
}
|
|
|
|
}
|
2018-10-03 23:56:33 +08:00
|
|
|
dependencies {
|
2020-10-13 23:18:13 +08:00
|
|
|
classpath 'com.android.tools.build:gradle:4.1.0'
|
2020-10-06 19:08:36 +08:00
|
|
|
classpath 'com.google.gms:google-services:4.3.4'
|
2018-10-03 23:56:33 +08:00
|
|
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
2019-09-27 18:14:45 +08:00
|
|
|
classpath 'org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.7.1'
|
2020-07-06 21:59:49 +08:00
|
|
|
classpath 'com.google.android.gms:oss-licenses-plugin:0.10.2'
|
2018-10-03 23:56:33 +08:00
|
|
|
|
|
|
|
// NOTE: Do not place your application dependencies here; they belong
|
|
|
|
// in the individual module build.gradle files
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
allprojects {
|
|
|
|
repositories {
|
2019-07-11 20:03:20 +08:00
|
|
|
// For olm library. This has to be declared first, to ensure that Olm library is not downloaded from another repo
|
2019-05-16 16:23:57 +08:00
|
|
|
maven {
|
|
|
|
url 'https://jitpack.io'
|
2019-07-11 20:03:20 +08: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"
|
2020-02-04 23:35:04 +08:00
|
|
|
// And ucrop
|
|
|
|
includeGroupByRegex "com\\.github\\.yalantis"
|
2020-02-17 20:48:21 +08:00
|
|
|
// JsonViewer
|
2020-02-12 23:48:11 +08:00
|
|
|
includeGroupByRegex 'com\\.github\\.BillCarsonFr'
|
2020-07-06 03:47:38 +08:00
|
|
|
// PhotoView
|
|
|
|
includeGroupByRegex 'com\\.github\\.chrisbanes'
|
2020-07-17 19:29:18 +08:00
|
|
|
// PFLockScreen-Android
|
2020-08-19 00:24:01 +08:00
|
|
|
includeGroupByRegex 'com\\.github\\.vector-im'
|
2019-07-11 20:03:20 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
maven {
|
|
|
|
url "http://dl.bintray.com/piasy/maven"
|
|
|
|
content {
|
|
|
|
includeGroupByRegex "com\\.github\\.piasy"
|
|
|
|
}
|
2019-05-16 16:23:57 +08:00
|
|
|
}
|
2019-07-11 20:03:20 +08:00
|
|
|
maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
|
2020-08-12 20:02:00 +08:00
|
|
|
// Jitsi repo
|
|
|
|
maven {
|
2020-08-15 03:33:25 +08:00
|
|
|
url "https://github.com/vector-im/jitsi_libre_maven/raw/master/android-sdk-2.9.3"
|
|
|
|
// Note: to test Jitsi release you can use a local file like this:
|
|
|
|
// url "file:///Users/bmarty/workspaces/jitsi_libre_maven/android-sdk-2.9.3"
|
2020-08-12 20:02:00 +08:00
|
|
|
}
|
2019-07-11 20:03:20 +08:00
|
|
|
google()
|
|
|
|
jcenter()
|
2018-10-03 23:56:33 +08:00
|
|
|
}
|
2019-07-17 01:13:48 +08:00
|
|
|
|
2019-10-08 20:30:59 +08:00
|
|
|
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
|
|
|
|
// Warnings are potential errors, so stop ignoring them
|
2020-10-08 19:04:55 +08:00
|
|
|
// You can override by passing `-PallWarningsAsErrors=false` in the command line
|
2020-10-22 23:23:45 +08:00
|
|
|
kotlinOptions.allWarningsAsErrors = project.getProperties().getOrDefault("allWarningsAsErrors", "true").toBoolean()
|
2019-10-08 20:30:59 +08:00
|
|
|
}
|
2018-10-03 23:56:33 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
task clean(type: Delete) {
|
|
|
|
delete rootProject.buildDir
|
|
|
|
}
|
2019-03-18 23:53:52 +08:00
|
|
|
|
|
|
|
apply plugin: 'org.sonarqube'
|
|
|
|
|
2019-07-03 21:24:56 +08:00
|
|
|
// To run a sonar analysis:
|
|
|
|
// Run './gradlew sonarqube -Dsonar.login=<REPLACE_WITH_SONAR_KEY>'
|
|
|
|
// The SONAR_KEY is stored in passbolt
|
|
|
|
|
2019-03-18 23:53:52 +08:00
|
|
|
sonarqube {
|
|
|
|
properties {
|
2020-08-27 23:48:19 +08:00
|
|
|
property "sonar.projectName", "Element-Android"
|
|
|
|
property "sonar.projectKey", "im.vector.app.android"
|
2019-03-18 23:53:52 +08:00
|
|
|
property "sonar.host.url", "https://sonarcloud.io"
|
2019-03-19 21:38:15 +08:00
|
|
|
property "sonar.projectVersion", project(":vector").android.defaultConfig.versionName
|
2019-03-18 23:53:52 +08:00
|
|
|
property "sonar.sourceEncoding", "UTF-8"
|
2020-08-27 23:43:22 +08:00
|
|
|
property "sonar.links.homepage", "https://github.com/vector-im/element-android/"
|
2020-09-02 00:49:08 +08:00
|
|
|
property "sonar.links.ci", "https://buildkite.com/matrix-dot-org/element-android"
|
2020-08-27 23:43:22 +08:00
|
|
|
property "sonar.links.scm", "https://github.com/vector-im/element-android/"
|
|
|
|
property "sonar.links.issue", "https://github.com/vector-im/element-android/issues"
|
2019-03-18 23:53:52 +08:00
|
|
|
property "sonar.organization", "new_vector_ltd_organization"
|
|
|
|
property "sonar.login", project.hasProperty("SONAR_LOGIN") ? SONAR_LOGIN : "invalid"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2019-03-19 21:38:15 +08:00
|
|
|
project(":vector") {
|
2019-03-18 23:53:52 +08:00
|
|
|
sonarqube {
|
|
|
|
properties {
|
2019-03-19 21:38:15 +08:00
|
|
|
property "sonar.sources", project(":vector").android.sourceSets.main.java.srcDirs
|
2019-03-18 23:53:52 +08:00
|
|
|
// exclude source code from analyses separated by a colon (:)
|
2020-08-27 23:39:09 +08:00
|
|
|
// Exclude Java source
|
|
|
|
property "sonar.exclusions", "**/BugReporterMultipartBody.java"
|
2019-03-18 23:53:52 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2019-07-03 21:24:56 +08:00
|
|
|
|
2020-08-27 21:37:39 +08:00
|
|
|
project(":diff-match-patch") {
|
|
|
|
sonarqube {
|
|
|
|
skipProject = true
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2019-07-03 21:24:56 +08:00
|
|
|
//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", "**/*.*"
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
//}
|