-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
149 lines (140 loc) · 4.31 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
plugins {
id 'org.springframework.boot' version '2.5.4'
id 'io.spring.dependency-management' version '1.0.11.RELEASE'
id 'java'
// id 'jacoco'
id "org.sonarqube" version "2.7"
}
group = 'com.bithumb'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'
configurations {
compileOnly {
extendsFrom annotationProcessor
}
}
repositories {
mavenCentral()
}
dependencies {
//jpa
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-data-jpa', version: '2.5.4'
implementation 'org.springframework.boot:spring-boot-starter-hateoas'
implementation 'junit:junit:4.13.1'
runtimeOnly 'org.mariadb.jdbc:mariadb-java-client'
implementation 'org.springframework.data:spring-data-rest-hal-explorer'
//유레카
implementation group: 'org.springframework.cloud', name: 'spring-cloud-starter-netflix-eureka-client', version: '3.0.4'
implementation group: 'org.springframework.cloud', name: 'spring-cloud-starter-aws', version: '2.2.6.RELEASE'
implementation 'io.springfox:springfox-boot-starter:3.0.0'
//mongdb
// implementation group: 'org.springframework.boot', name: 'spring-boot-starter-data-mongodb-reactive'
// implementation group: 'org.mongodb', name: 'mongodb-driver-sync'
// implementation 'org.springframework.boot:spring-boot-starter-data-mongodb'
// implementation 'org.springframework.boot:spring-boot-starter-data-mongodb-reactive'
implementation 'org.springframework.boot:spring-boot-starter-web'
compileOnly 'org.projectlombok:lombok'
developmentOnly 'org.springframework.boot:spring-boot-devtools'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'io.projectreactor:reactor-test'
//로깅
//https://mvnrepository.com/artifact/org.slf4j/slf4j-api
implementation 'org.slf4j:slf4j-api:1.7.30'
implementation 'ch.qos.logback:logback-core:1.2.3'
//https://mvnrepository.com/artifact/ch.qos.logback/logback-classic
testImplementation 'ch.qos.logback:logback-classic:1.2.3'
}
//test {
// jacoco {
// destinationFile = file("$buildDir/jacoco/jacoco.exec")
// }
//
// useJUnitPlatform()
// finalizedBy 'jacocoTestReport'
//}
//
////jacoco
//jacoco {
// // JaCoCo 버전
// toolVersion = '0.8.5'
//
//// 테스트결과 리포트를 저장할 경로 변경
//// default는 "${project.reporting.baseDir}/jacoco"
//// reportsDir = file("$buildDir/customJacocoReportDir")
//}
//
//jacocoTestReport {
// reports {
// // 원하는 리포트를 켜고 끌 수 있다.
// html.enabled true
// xml.enabled false
// csv.enabled false
//
//// 각 리포트 타입 마다 리포트 저장 경로를 설정할 수 있다.
//// html.destination file("$buildDir/jacocoHtml")
//// xml.destination file("$buildDir/jacoco.xml")
// }
//
// finalizedBy 'jacocoTestCoverageVerification'
//}
//
//jacocoTestCoverageVerification {
// violationRules {
// rule {
// // 'element'가 없으면 프로젝트의 전체 파일을 합친 값을 기준으로 한다.
// limit {
// // 'counter'를 지정하지 않으면 default는 'INSTRUCTION'
// // 'value'를 지정하지 않으면 default는 'COVEREDRATIO'
// minimum = 0.30
// }
// }
//
// rule {
// // 룰을 간단히 켜고 끌 수 있다.
// enabled = true
//
// // 룰을 체크할 단위는 클래스 단위
// element = 'CLASS'
//
// // 브랜치 커버리지를 최소한 90% 만족시켜야 한다.
// limit {
// counter = 'BRANCH'
// value = 'COVEREDRATIO'
// minimum = 0.90
// }
//
// // 라인 커버리지를 최소한 80% 만족시켜야 한다.
// limit {
// counter = 'LINE'
// value = 'COVEREDRATIO'
// minimum = 0.80
// }
//
// // 빈 줄을 제외한 코드의 라인수를 최대 200라인으로 제한한다.
// limit {
// counter = 'LINE'
// value = 'TOTALCOUNT'
// maximum = 200
//// maximum = 8
// }
//
// // 커버리지 체크를 제외할 클래스들
// excludes = [
//// '*.test.*',
//// '*.Kotlin*'
// ]
// }
// }
//}
//task testCoverage(type: Test) {
// group 'verification'
// description 'Runs the unit tests with coverage'
//
// dependsOn(':test',
// ':jacocoTestReport',
// ':jacocoTestCoverageVerification')
//
// tasks['jacocoTestReport'].mustRunAfter(tasks['test'])
// tasks['jacocoTestCoverageVerification'].mustRunAfter(tasks['jacocoTestReport'])
//}