git-subtree-dir: server git-subtree-mainline:2a3d7fdb25git-subtree-split:099f138206
65 lines
1.7 KiB
Kotlin
65 lines
1.7 KiB
Kotlin
plugins {
|
|
java
|
|
alias(libs.plugins.spring.boot)
|
|
alias(libs.plugins.spring.dependency.management)
|
|
}
|
|
|
|
val artefactVersion: String by project
|
|
val buildChannel: String by project
|
|
val vendor: String by project
|
|
|
|
group = "com.onixbyte.helix"
|
|
version = artefactVersion
|
|
|
|
tasks.withType<JavaCompile> {
|
|
options.encoding = "UTF-8"
|
|
}
|
|
|
|
java {
|
|
sourceCompatibility = JavaVersion.VERSION_21
|
|
targetCompatibility = JavaVersion.VERSION_21
|
|
toolchain {
|
|
languageVersion = JavaLanguageVersion.of(21)
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
// BOMs are imported as platforms, so they cannot be bundled.
|
|
implementation(platform(libs.aws.sdk.bom))
|
|
implementation(platform(libs.onixbyte.versionCatalogue))
|
|
|
|
implementation(libs.bundles.utilities)
|
|
implementation(libs.bundles.onixbyte)
|
|
implementation(libs.bundles.web)
|
|
implementation(libs.bundles.persistence)
|
|
implementation(libs.bundles.security)
|
|
implementation(libs.bundles.cache)
|
|
implementation(libs.bundles.observability)
|
|
implementation(libs.bundles.mail)
|
|
implementation(libs.bundles.aws)
|
|
implementation(libs.bundles.docs)
|
|
|
|
// Annotation processor for @ConfigurationProperties; kept out of bundles.
|
|
implementation(libs.spring.boot.configurationProcessor)
|
|
|
|
runtimeOnly(libs.postgres.driver)
|
|
|
|
testImplementation(libs.bundles.testing)
|
|
testRuntimeOnly(libs.bundles.testRuntime)
|
|
}
|
|
|
|
tasks.processResources {
|
|
filesMatching("application.yaml") {
|
|
println("appVersion = ${artefactVersion}, channel = ${buildChannel}, vendor = ${vendor}")
|
|
expand(
|
|
"appVersion" to artefactVersion,
|
|
"channel" to buildChannel,
|
|
"vendor" to vendor
|
|
)
|
|
}
|
|
}
|
|
|
|
tasks.test {
|
|
useJUnitPlatform()
|
|
}
|