-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle.kts
77 lines (64 loc) · 2.39 KB
/
build.gradle.kts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import io.gitlab.arturbosch.detekt.Detekt
import io.gitlab.arturbosch.detekt.report.ReportMergeTask
// Top-level build file where you can add configuration options common to all sub-projects/modules.
@Suppress("DSL_SCOPE_VIOLATION")
plugins {
alias(libs.plugins.android.application) apply false
alias(libs.plugins.android.library) apply false
alias(libs.plugins.kotlin.android) apply false
alias(libs.plugins.kotlin.serialization) apply false
alias(libs.plugins.hilt) apply false
alias(libs.plugins.kotlin.jvm) apply false
alias(libs.plugins.ksp) apply false
alias(libs.plugins.google.services) apply false
alias(libs.plugins.crashlytics) apply false
alias(libs.plugins.kover) apply false
alias(libs.plugins.compose.compiler) apply false
alias(libs.plugins.detekt)
alias(libs.plugins.sonarqube)
}
tasks.register<Delete>("clean") {
delete(rootProject.layout.buildDirectory)
}
val projectVersion by extra("1.3.2")
val reportMerge by tasks.registering(ReportMergeTask::class) {
output.set(rootProject.layout.buildDirectory.file("reports/detekt-results.xml"))
}
subprojects {
apply(plugin = "io.gitlab.arturbosch.detekt")
detekt {
config = files("${rootProject.rootDir}/detekt/config.yml")
buildUponDefaultConfig = true
autoCorrect = true
ignoredBuildTypes = listOf("release", "minified")
}
tasks.withType<Detekt>().configureEach {
reports {
sarif.required.set(false)
md.required.set(false)
xml.required.set(true)
xml.outputLocation.set(file("build/reports/detekt.xml"))
html.required.set(true)
html.outputLocation.set(file("build/reports/detekt.html"))
txt.required.set(true)
txt.outputLocation.set(file("build/reports/detekt.txt"))
}
finalizedBy(reportMerge)
}
reportMerge {
input.from(tasks.withType<Detekt>().map { it.xmlReportFile })
}
dependencies {
detektPlugins("io.gitlab.arturbosch.detekt:detekt-formatting:1.23.7")
}
}
sonar {
properties {
property("sonar.projectKey", "toquete_boxbox")
property("sonar.organization", "toquete")
property("sonar.projectName", "BoxBox")
property("sonar.projectVersion", projectVersion)
property("sonar.host.url", "https://sonarcloud.io")
property("sonar.verbose", "true")
}
}