74 lines
1.9 KiB
Kotlin
74 lines
1.9 KiB
Kotlin
group = "space.nstart.pcp"
|
|
|
|
plugins {
|
|
kotlin("jvm")
|
|
kotlin("plugin.spring")
|
|
id("org.springframework.boot")
|
|
id("io.spring.dependency-management")
|
|
id("org.sonarqube")
|
|
jacoco
|
|
}
|
|
|
|
version = "1.0.0"
|
|
|
|
kotlin {
|
|
compilerOptions {
|
|
freeCompilerArgs.addAll("-Xjsr305=strict")
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation("${property("dep.spring.actuator")}")
|
|
implementation("org.springframework.boot:spring-boot-starter-web")
|
|
implementation("org.springframework.boot:spring-boot-starter-validation")
|
|
implementation("org.springframework.cloud:spring-cloud-config-server")
|
|
implementation("org.jetbrains.kotlin:kotlin-reflect")
|
|
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
|
|
|
|
testImplementation("org.jetbrains.kotlin:kotlin-test-junit5")
|
|
testImplementation("org.springframework.boot:spring-boot-starter-test")
|
|
|
|
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
|
|
}
|
|
|
|
dependencyManagement {
|
|
imports {
|
|
mavenBom("org.springframework.cloud:spring-cloud-dependencies:${property("versions.spring.cloud")}")
|
|
}
|
|
}
|
|
|
|
tasks.withType<Jar> {
|
|
manifest {
|
|
attributes["Built-By"] = "nstart"
|
|
attributes["Implementation-Version"] = archiveVersion
|
|
}
|
|
}
|
|
|
|
tasks.withType<Test> {
|
|
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
|
|
}
|
|
}
|
|
|
|
sonar {
|
|
properties {
|
|
property("sonar.projectKey", "pcp")
|
|
property("sonar.login", "sqp_tokenExample")
|
|
property("sonar.qualitygate.wait", "${property("sonar.qualitygate.wait")}")
|
|
property("sonar.host.url", "${property("sonar.host.url")}")
|
|
}
|
|
}
|