-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
117 lines (95 loc) · 3.27 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
plugins {
id 'application'
id 'checkstyle'
alias(libs.plugins.detekt)
alias(libs.plugins.kotlin)
alias(libs.plugins.th2.component)
alias(libs.plugins.download)
}
group = 'com.exactpro.th2'
version = release_version
kotlin {
jvmToolchain(11)
}
repositories {
mavenCentral()
}
checkstyle {
toolVersion = "10.12.4"
}
detekt {
buildUponDefaultConfig = true
autoCorrect = true
config.setFrom("$rootDir/config/detekt/detekt.yml")
}
dependencies {
implementation "com.fasterxml.jackson.dataformat:jackson-dataformat-yaml"
implementation "com.fasterxml.jackson.module:jackson-module-kotlin"
implementation libs.java.uuid.generator
implementation "org.apache.commons:commons-text"
implementation libs.kubernetes.client
implementation(libs.okhttp) {
because "okhttp:3.12.12 has vulnerabilities"
}
implementation(libs.logging.interceptor) {
because "logging-interceptor:3.12.12 has vulnerabilities"
}
implementation "com.rabbitmq:amqp-client"
implementation libs.http.client
implementation 'org.apache.logging.log4j:log4j-slf4j2-impl'
implementation 'org.apache.logging.log4j:log4j-core'
implementation libs.kotlin.logging
implementation "org.jetbrains:annotations"
implementation "io.prometheus:simpleclient"
implementation "io.prometheus:simpleclient_httpserver"
implementation "io.prometheus:simpleclient_hotspot"
implementation "com.google.guava:guava"
testImplementation(platform(libs.testcontainers.bom))
testImplementation 'org.testcontainers:rabbitmq'
testImplementation 'org.testcontainers:k3s'
testImplementation libs.mockito.core
testImplementation libs.mockito.kotlin
testImplementation libs.junit.jupiter
testImplementation libs.junit.jupiter.params
testImplementation "org.jetbrains.kotlin:kotlin-test-junit5"
testImplementation libs.bcpkix.jdk18on
testImplementation libs.awaitility
testImplementation libs.strikt.core
detektPlugins libs.detekt.formatting
}
wrapper {
version '8.7'
distributionType Wrapper.DistributionType.BIN
}
tasks.register("downloadCRDs", Download) {
group = "verification"
src([
'https://raw.githubusercontent.com/th2-net/th2-infra/master/chart/crds/th2-box-crd.yaml',
'https://raw.githubusercontent.com/th2-net/th2-infra/master/chart/crds/th2-core-box-crd.yaml',
'https://raw.githubusercontent.com/th2-net/th2-infra/master/chart/crds/th2-dictionary-crd.yaml',
'https://raw.githubusercontent.com/th2-net/th2-infra/master/chart/crds/th2-estore-crd.yaml',
'https://raw.githubusercontent.com/th2-net/th2-infra/master/chart/crds/th2-job-crd.yaml',
'https://raw.githubusercontent.com/th2-net/th2-infra/master/chart/crds/th2-mstore-crd.yaml',
])
dest layout.buildDirectory.dir('resources/test/crds').get()
}
checkstyleTest.dependsOn("downloadCRDs")
test {
dependsOn("downloadCRDs")
useJUnitPlatform {
excludeTags("integration-test")
}
}
tasks.register("integrationTest", Test) {
group = "verification"
dependsOn("downloadCRDs")
useJUnitPlatform {
includeTags("integration-test")
}
testLogging {
showStandardStreams = true
}
}
dependencyCheck {
skipConfigurations += "checkstyle"
}