-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
119 lines (112 loc) · 3.84 KB
/
build.gradle
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
plugins {
id 'java'
id 'jacoco'
id 'io.quarkus'
id "io.freefair.lombok" version "8.10.2"
// id 'org.jetbrains.kotlin.jvm'
}
repositories {
mavenCentral()
mavenLocal()
}
dependencies {
implementation("io.quarkus:quarkus-smallrye-openapi")
implementation 'io.quarkus:quarkus-config-yaml'
implementation 'io.quarkus:quarkus-cache'
implementation enforcedPlatform("${quarkusPlatformGroupId}:${quarkusPlatformArtifactId}:${quarkusPlatformVersion}")
implementation 'io.quarkus:quarkus-rest'
implementation 'io.quarkus:quarkus-rest-jackson'
implementation 'io.quarkus:quarkus-arc'
implementation 'io.quarkus:quarkus-rest-client-jackson'
implementation 'io.quarkus:quarkus-reactive-routes'
// cache
implementation 'io.quarkus:quarkus-cache'
implementation 'io.quarkus:quarkus-redis-cache'
implementation 'io.quarkus:quarkus-redis-client'
implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.18.1'
// security
implementation 'io.quarkus:quarkus-smallrye-jwt'
implementation 'io.quarkus:quarkus-smallrye-jwt-build'
// oidc
implementation 'io.quarkus:quarkus-oidc'
// messaging
implementation 'io.quarkus:quarkus-messaging-kafka'
implementation 'io.quarkus:quarkus-kafka-client'
// orm
implementation 'io.quarkus:quarkus-hibernate-orm'
implementation 'io.quarkus:quarkus-hibernate-validator'
implementation 'io.quarkus:quarkus-jdbc-postgresql'
implementation 'io.quarkus:quarkus-hibernate-envers'
implementation 'io.quarkus:quarkus-hibernate-orm-panache'
implementation 'org.postgresql:postgresql'
//
implementation 'org.mapstruct:mapstruct:1.6.2'
annotationProcessor 'org.mapstruct:mapstruct-processor:1.6.2'
// OTEL
implementation 'io.quarkus:quarkus-opentelemetry'
implementation 'io.opentelemetry.instrumentation:opentelemetry-jdbc'
implementation 'io.quarkus:quarkus-micrometer'
implementation 'io.quarkus:quarkus-micrometer-registry-prometheus'
implementation 'io.quarkus:quarkus-smallrye-health'
// for debugging
implementation 'io.opentelemetry:opentelemetry-exporter-logging'
// scheduler
implementation 'io.quarkus:quarkus-scheduler'
//
compileOnly 'org.projectlombok:lombok'
//
testImplementation 'io.quarkus:quarkus-junit5'
testImplementation 'io.quarkus:quarkus-junit5-mockito'
testImplementation 'io.rest-assured:rest-assured'
testAnnotationProcessor 'org.mapstruct:mapstruct-processor:1.6.2'
testImplementation 'io.quarkus:quarkus-jacoco'
// implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
}
group 'com.example.demo'
version '1.0.0-SNAPSHOT'
java {
}
test {
systemProperty "java.util.logging.manager", "org.jboss.logmanager.LogManager"
// finalizedBy jacocoTestReport
// jacoco {
// excludeClassLoaders = ["*QuarkusClassLoader"]
// destinationFile = layout.buildDirectory.file("jacoco-quarkus.exec").get().asFile
// }
// jacocoTestReport.enabled = false
}
compileJava {
options.encoding = 'UTF-8'
options.compilerArgs << '-parameters'
}
compileTestJava {
options.encoding = 'UTF-8'
}
//kotlin {
// jvmToolchain(21)
//}
jacocoTestCoverageVerification {
executionData.setFrom("$project.buildDir/jacoco-quarkus.exec")
violationRules {
rule {
limit {
counter = 'INSTRUCTION'
value = 'COVEREDRATIO'
minimum = 0.80
}
limit {
counter = 'BRANCH'
value = 'COVEREDRATIO'
minimum = 0.72
}
}
}
afterEvaluate {
classDirectories.setFrom(files(classDirectories.files.collect {
fileTree(dir: it, exclude: [
"org/example/excluded/**/*"
])
}))
}
}
check.dependsOn jacocoTestCoverageVerification