-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
112 lines (88 loc) · 3.4 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
plugins {
id 'java'
id 'io.quarkus'
id 'com.adarshr.test-logger' version '3.2.0'
}
apply from: 'code-analysis/code-analysis.gradle'
repositories {
mavenLocal()
mavenCentral()
maven {
url "https://packages.confluent.io/maven/"
}
}
sourceSets {
integrationTest {
java.srcDir file('src/integrationTest/java')
compileClasspath += sourceSets.main.output
runtimeClasspath += sourceSets.main.output
}
}
task integrationTest(type: Test) {
description = 'Runs integration tests.'
group = 'verification'
testClassesDirs = sourceSets.integrationTest.output.classesDirs
classpath = sourceSets.integrationTest.runtimeClasspath
shouldRunAfter test
}
configurations {
integrationTestImplementation.extendsFrom implementation
integrationTestRuntimeOnly.extendsFrom runtimeOnly
integrationTestImplementation.setCanBeResolved(true)
integrationTestRuntimeOnly.setCanBeResolved(true)
}
sourceSets.main.java.srcDirs = ['build/classes/java/quarkus-generated-sources/avdl', 'src/main/java']
dependencies {
implementation enforcedPlatform("${quarkusPlatformGroupId}:${quarkusPlatformArtifactId}:${quarkusPlatformVersion}")
implementation 'io.quarkus:quarkus-container-image-jib'
implementation 'io.quarkus:quarkus-micrometer-registry-prometheus'
// Base
implementation 'io.quarkus:quarkus-resteasy-jackson'
implementation 'io.quarkus:quarkus-resteasy'
implementation group: 'io.quarkus', name: 'quarkus-smallrye-reactive-messaging'
implementation group: 'io.smallrye.reactive', name: 'smallrye-reactive-messaging-in-memory'
// Utility
implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.12.0'
// Auth
implementation 'io.quarkus:quarkus-oidc'
implementation 'io.quarkus:quarkus-mongodb-panache'
// Kafka
implementation 'io.quarkus:quarkus-confluent-registry-avro'
implementation group: 'io.confluent', name: 'kafka-avro-serializer', version: '7.2.1'
implementation 'io.quarkus:quarkus-avro'
implementation group: 'io.quarkus', name: 'quarkus-smallrye-reactive-messaging-kafka'
testImplementation("io.smallrye.reactive:smallrye-reactive-messaging-in-memory")
testImplementation 'io.quarkus:quarkus-junit5'
testImplementation("io.quarkus:quarkus-junit5-mockito")
testImplementation 'io.rest-assured:rest-assured'
testImplementation 'org.mockito:mockito-core:4.8.0'
// Integration Testing
integrationTestImplementation 'io.quarkus:quarkus-junit5'
integrationTestImplementation 'org.mockito:mockito-junit-jupiter'
integrationTestImplementation "org.testcontainers:testcontainers"
integrationTestImplementation "org.testcontainers:kafka"
}
group 'net.explorviz'
version '1.0-SNAPSHOT'
compileJava {
options.encoding = 'UTF-8'
options.compilerArgs << '-parameters'
}
compileTestJava {
options.encoding = 'UTF-8'
}
java {
sourceCompatibility = JavaVersion.VERSION_21
targetCompatibility = JavaVersion.VERSION_21
}
tasks.withType(JavaCompile) {
// Turn on all javac warnings instead of classfile and processing, which produces many false-positives about
// annotations and cast which is triggered by the auto-generated Dao implementations
options.compilerArgs << "-Xlint:all" << "-Xlint:-classfile" << "-Xlint:-processing" << "-Xlint:-cast"
}
test {
systemProperty "java.util.logging.manager", "org.jboss.logmanager.LogManager"
}
integrationTest.doFirst {
systemProperty "java.util.logging.manager", "org.jboss.logmanager.LogManager"
}