mirror of
https://github.com/cna-bootcamp/phonebill.git
synced 2026-06-13 12:09:10 +00:00
release
This commit is contained in:
@@ -0,0 +1,96 @@
|
||||
// bill-service 모듈
|
||||
// 루트 build.gradle의 subprojects 블록에서 공통 설정 적용됨
|
||||
|
||||
plugins {
|
||||
id 'jacoco'
|
||||
}
|
||||
|
||||
dependencies {
|
||||
// Database (bill service specific)
|
||||
runtimeOnly 'org.postgresql:postgresql'
|
||||
implementation 'com.zaxxer:HikariCP:5.0.1'
|
||||
|
||||
// Redis (bill service specific)
|
||||
implementation 'redis.clients:jedis:4.4.6'
|
||||
|
||||
// Circuit Breaker & Resilience
|
||||
implementation 'io.github.resilience4j:resilience4j-spring-boot3:2.1.0'
|
||||
implementation 'io.github.resilience4j:resilience4j-circuitbreaker:2.1.0'
|
||||
implementation 'io.github.resilience4j:resilience4j-retry:2.1.0'
|
||||
implementation 'io.github.resilience4j:resilience4j-timelimiter:2.1.0'
|
||||
|
||||
// Logging (bill service specific)
|
||||
implementation 'org.slf4j:slf4j-api'
|
||||
implementation 'ch.qos.logback:logback-classic'
|
||||
|
||||
// HTTP Client
|
||||
implementation 'org.springframework.boot:spring-boot-starter-webflux'
|
||||
|
||||
// Common modules (로컬 의존성)
|
||||
implementation project(':common')
|
||||
|
||||
// Test Dependencies (bill service specific)
|
||||
testImplementation 'org.testcontainers:postgresql'
|
||||
testImplementation 'redis.embedded:embedded-redis:0.7.3'
|
||||
testImplementation 'com.github.tomakehurst:wiremock-jre8:2.35.0'
|
||||
}
|
||||
|
||||
tasks.named('test') {
|
||||
finalizedBy jacocoTestReport
|
||||
}
|
||||
|
||||
jacocoTestReport {
|
||||
dependsOn test
|
||||
reports {
|
||||
xml.required = true
|
||||
csv.required = false
|
||||
html.outputLocation = layout.buildDirectory.dir('jacocoHtml')
|
||||
}
|
||||
}
|
||||
|
||||
jacoco {
|
||||
toolVersion = "0.8.8"
|
||||
}
|
||||
|
||||
jacocoTestCoverageVerification {
|
||||
violationRules {
|
||||
rule {
|
||||
limit {
|
||||
minimum = 0.80
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
springBoot {
|
||||
buildInfo()
|
||||
}
|
||||
|
||||
// 환경별 실행 프로필 설정
|
||||
task runDev(type: JavaExec, dependsOn: 'classes') {
|
||||
group = 'application'
|
||||
description = 'Run the application with dev profile'
|
||||
classpath = sourceSets.main.runtimeClasspath
|
||||
mainClass = 'com.phonebill.bill.BillServiceApplication'
|
||||
systemProperty 'spring.profiles.active', 'dev'
|
||||
}
|
||||
|
||||
task runProd(type: JavaExec, dependsOn: 'classes') {
|
||||
group = 'application'
|
||||
description = 'Run the application with prod profile'
|
||||
classpath = sourceSets.main.runtimeClasspath
|
||||
mainClass = 'com.phonebill.bill.BillServiceApplication'
|
||||
systemProperty 'spring.profiles.active', 'prod'
|
||||
}
|
||||
|
||||
// JAR 파일명 설정
|
||||
jar {
|
||||
enabled = false
|
||||
archiveBaseName = 'bill-service'
|
||||
}
|
||||
|
||||
bootJar {
|
||||
enabled = true
|
||||
archiveBaseName = 'bill-service'
|
||||
archiveClassifier = ''
|
||||
}
|
||||
Reference in New Issue
Block a user