106 lines
3.2 KiB
Kotlin
106 lines
3.2 KiB
Kotlin
group = "space.nstart.pcp"
|
|
|
|
plugins {
|
|
kotlin("jvm")
|
|
kotlin("plugin.spring")
|
|
kotlin("plugin.jpa")
|
|
kotlin("plugin.lombok")
|
|
id("org.springframework.boot")
|
|
id("io.spring.dependency-management")
|
|
//id("org.sonarqube")
|
|
jacoco
|
|
}
|
|
|
|
version = "1.0.0"
|
|
|
|
|
|
kotlin {
|
|
jvmToolchain((property("versions.java") as String).toInt())
|
|
compilerOptions {
|
|
freeCompilerArgs.addAll("-Xjsr305=strict")
|
|
jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.fromTarget(property("versions.java") as String))
|
|
}
|
|
}
|
|
|
|
configurations {
|
|
compileOnly {
|
|
extendsFrom(configurations.annotationProcessor.get())
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation(project(":libs:pcp-types-lib"))
|
|
implementation(project(":libs:ballistics-lib"))
|
|
implementation("${property("dep.spring.actuator")}")
|
|
implementation("org.springframework.boot:spring-boot-starter-logging")
|
|
implementation("org.springframework.boot:spring-boot-starter-validation")
|
|
implementation("org.springframework.boot:spring-boot-starter-web")
|
|
implementation("org.springframework.kafka:spring-kafka")
|
|
implementation("jakarta.validation:jakarta.validation-api")
|
|
implementation("org.jetbrains.kotlin:kotlin-reflect")
|
|
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
|
|
implementation("org.springframework.boot:spring-boot-starter-webflux")
|
|
implementation("org.springdoc:springdoc-openapi-starter-webflux-ui:${property("versions.open-api")}")
|
|
|
|
|
|
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4")
|
|
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-reactor:1.6.4")
|
|
|
|
|
|
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
|
|
// implementation("org.springframework.kafka:spring-kafka")
|
|
implementation("org.springframework.cloud:spring-cloud-starter-config")
|
|
implementation("org.springframework.boot:spring-boot-starter-flyway")
|
|
implementation("org.flywaydb:flyway-database-postgresql")
|
|
implementation("org.postgresql:postgresql")
|
|
implementation("jakarta.validation:jakarta.validation-api")
|
|
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
|
|
|
|
implementation("org.locationtech.jts:jts-core:1.19.0")
|
|
|
|
|
|
testImplementation("junit:junit")
|
|
testImplementation("org.jetbrains.kotlin:kotlin-test-junit5")
|
|
testImplementation("org.springframework.boot:spring-boot-starter-test")
|
|
testImplementation("org.springframework.kafka:spring-kafka-test")
|
|
testImplementation("org.springframework.security:spring-security-test")
|
|
testImplementation("org.testcontainers:junit-jupiter")
|
|
|
|
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
|
|
}
|
|
|
|
dependencyManagement {
|
|
imports {
|
|
mavenBom("org.springframework.cloud:spring-cloud-dependencies:${property("versions.spring.cloud")}")
|
|
mavenBom("org.testcontainers:testcontainers-bom:${property("versions.testcontainers")}")
|
|
}
|
|
}
|
|
|
|
tasks.withType<Jar> {
|
|
manifest {
|
|
attributes["Built-By"] = "nstart"
|
|
attributes["Implementation-Version"] = archiveVersion
|
|
}
|
|
}
|
|
|
|
tasks.withType<Test> {
|
|
enabled = true
|
|
useJUnitPlatform()
|
|
finalizedBy(tasks.jacocoTestReport)
|
|
systemProperty("spring.profiles.active", "test")
|
|
}
|
|
|
|
tasks.check {
|
|
dependsOn(tasks.jacocoTestCoverageVerification)
|
|
}
|
|
|
|
tasks.jacocoTestReport {
|
|
dependsOn(tasks.test)
|
|
reports {
|
|
xml.required = true
|
|
html.required = true
|
|
csv.required = false
|
|
}
|
|
}
|
|
|