-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
164 lines (142 loc) · 5.55 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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
plugins {
id 'com.google.cloud.tools.jib' version '3.3.1'
id 'org.springframework.boot' version '3.2.0'
id 'io.spring.dependency-management' version '1.1.4'
id 'java'
id "org.sonarqube" version "4.0.0.2929"
// id 'nebula.release' version '11.0.0'
id 'jacoco'
id "org.flywaydb.flyway" version "9.17.0"
// id "net.ltgt.apt" version "0.21"
// id 'pmd'
}
sonarqube {
properties {
property 'sonar.login', System.getenv('SONAR_DATA_SERVICE_TOKEN')
property 'sonar.host.url', 'https://sonarcloud.io'
property 'sonar.organization', 'relay-service'
property 'sonar.projectKey', 'relay-data-service'
property 'sonar.jacoco.reportPaths', 'build/reports/jacoco/test/jacocoTestReport.xml'
}
}
group = 'com.relay'
version = '0.0.2-SNAPSHOT'
//sourceCompatibility = '20'
//targetCompatibility = '20'
configurations {
compileOnly {
extendsFrom annotationProcessor
}
}
java {
sourceCompatibility = JavaVersion.VERSION_21
}
repositories {
// jcenter()
mavenCentral()
mavenLocal()
// maven { url 'https://repo.spring.io/snapshot' }
// maven { url 'https://repo.spring.io/milestone' }
}
ext {
// set('springCloudVersion', "2022.0.0")
set('testcontainersVersion', "1.17.3")
set('swaggerVersion', "2.9.2")
// set('dekorateVersion', "2.5.0")
set('mapStructVersion', "1.4.1.Final")
set('testcontainersVersion', "1.18.0")
}
dependencies {
// project 'ru.relay.infrastructure:db'
// implementation 'ru.relay.infrastructure:db:0.0.1'
// implementation 'ru.relay.infrastructure:local-postgres:0.0.1'
// implementation 'ru.relay.infrastructure:id:0.01'
runtimeOnly 'com.h2database:h2'
testImplementation "org.springframework.boot:spring-boot-starter-test"
// implementation("io.springfox:springfox-swagger2:${swaggerVersion}") {
// exclude group: 'org.mapstruct', module: 'mapstruct'
// }
// implementation "io.springfox:springfox-swagger-ui:${swaggerVersion}"
// implementation "org.mapstruct:mapstruct-jdk8:${mapStructVersion}"
// implementation 'org.springframework.boot:spring-boot-starter-security'
// implementation 'org.springframework.cloud:spring-cloud-starter-zipkin'
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
testImplementation("org.springframework.boot:spring-boot-starter-data-jpa")
implementation("commons-beanutils:commons-beanutils:1.9.4")
compileOnly 'org.projectlombok:lombok'
implementation "org.testcontainers:postgresql:1.17.6"
implementation "org.springframework.boot:spring-boot-starter-web"
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation "org.mapstruct:mapstruct:${mapStructVersion}"
// implementation "io.springfox:springfox-boot-starter:3.0.0"
implementation 'org.springframework.boot:spring-boot-starter-actuator'
// developmentOnly 'org.springframework.boot:spring-boot-devtools'
runtimeOnly 'org.postgresql:postgresql'
annotationProcessor 'org.projectlombok:lombok'
testAnnotationProcessor 'org.projectlombok:lombok'
// annotationProcessor "io.dekorate:kubernetes-spring-starter:${dekorateVersion}"
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.springframework.security:spring-security-test'
testImplementation 'org.springframework.boot:spring-boot-testcontainers'
testImplementation 'org.springframework.boot:spring-boot-devtools'
testImplementation 'org.testcontainers:junit-jupiter'
testImplementation 'org.testcontainers:postgresql'
annotationProcessor "org.mapstruct:mapstruct-processor:${mapStructVersion}"
testAnnotationProcessor "org.mapstruct:mapstruct-processor:${mapStructVersion}"
implementation 'org.springframework.boot:spring-boot-starter-validation'
implementation 'org.jetbrains:annotations:16.0.2'
implementation 'org.flywaydb:flyway-core'
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.2.0'
// implementation 'org.springframework.cloud:spring-cloud-starter-sleuth'
runtimeOnly 'io.micrometer:micrometer-registry-prometheus'
// implementation 'org.springframework.cloud:spring-cloud-starter-openfeign'
// implementation group: 'org.springframework.cloud', name: 'spring-cloud-starter-netflix-ribbon', version: '2.2.9.RELEASE'
// implementation('org.springframework.cloud:spring-cloud-starter-kubernetes-fabric8-all:3.0.0')
}
jacoco {
toolVersion = "0.8.10"
}
jacocoTestReport {
reports {
// xml.enabled true
// html.enabled true
xml.required.set(true)
html.required.set(true)
}
}
test {
useJUnitPlatform {
// includeTags 'unit', 'integration', ''
}
}
check.dependsOn jacocoTestReport
dependencyManagement {
imports {
mavenBom "org.testcontainers:testcontainers-bom:${testcontainersVersion}"
// mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
}
}
jib {
from {
image = 'eclipse-temurin:20-alpine'
}
to {
image = 'alexunc/data-service'
// auth {
// username = System.getenv('DOCKER_LOGIN')
// password = System.getenv('DOCKER_PASS')
// }
tags = [version, 'latest']
}
container {
// jvmFlags = ['-Dmy.property=example.value', '-Xms512m', '-Xdebug']
// mainClass = 'mypackage.MyApp'
// args = ['some', 'args']
ports = ['9090', '8080']
// labels = [key1:'value1', key2:'value2']
// format = 'OCI'
}
}
//tasks.named('test') {
// useJUnitPlatform()
//}