9521edaa43
- configure global CORS policy allowing all origins, headers, and methods - register CorsFilter bean for cross-origin request handling - bump version to v0.1f
82 lines
2.8 KiB
Kotlin
82 lines
2.8 KiB
Kotlin
plugins {
|
|
kotlin("jvm") version "2.2.21"
|
|
kotlin("plugin.spring") version "2.2.21"
|
|
id("org.springframework.boot") version "4.0.6"
|
|
id("io.spring.dependency-management") version "1.1.7"
|
|
id("com.bmuschko.docker-spring-boot-application") version "10.0.0"
|
|
}
|
|
|
|
group = "com.msksbr"
|
|
version = "v0.1f"
|
|
description = "bookMgr"
|
|
|
|
java {
|
|
toolchain {
|
|
languageVersion = JavaLanguageVersion.of(21)
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
implementation("org.springframework.boot:spring-boot-starter")
|
|
implementation("org.jetbrains.kotlin:kotlin-reflect")
|
|
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.10.2")
|
|
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-reactor:1.10.2")
|
|
implementation("org.springframework.boot:spring-boot-starter-web")
|
|
implementation("org.aspectj:aspectjweaver")
|
|
implementation("org.springframework.security:spring-security-crypto")
|
|
implementation("org.springdoc:springdoc-openapi-starter-webmvc-ui:3.0.3")
|
|
implementation("org.bouncycastle:bcprov-jdk18on:1.84")
|
|
implementation("com.mysql:mysql-connector-j")
|
|
implementation("com.baomidou:mybatis-plus-spring-boot4-starter:3.5.15")
|
|
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
|
|
implementation("org.springframework.boot:spring-boot-starter-validation")
|
|
implementation("io.github.oshai:kotlin-logging-jvm:7.0.0")
|
|
implementation("io.jsonwebtoken:jjwt-api:0.13.0")
|
|
runtimeOnly("io.jsonwebtoken:jjwt-impl:0.13.0")
|
|
runtimeOnly("io.jsonwebtoken:jjwt-jackson:0.13.0")
|
|
runtimeOnly("org.codehaus.janino:janino")
|
|
testImplementation("org.springframework.boot:spring-boot-starter-test")
|
|
testImplementation("org.jetbrains.kotlin:kotlin-test-junit5")
|
|
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
|
|
}
|
|
|
|
kotlin {
|
|
compilerOptions {
|
|
freeCompilerArgs.addAll("-Xjsr305=strict", "-Xannotation-default-target=param-property")
|
|
}
|
|
}
|
|
|
|
tasks.withType<Test> {
|
|
useJUnitPlatform()
|
|
}
|
|
|
|
// 生产打包时排除dev环境配置
|
|
tasks.bootJar {
|
|
exclude("application-dev.yaml")
|
|
}
|
|
|
|
val giteaRegistry = System.getenv("GITEA_REGISTRY") ?: "gitea.example.com"
|
|
val giteaUser = System.getenv("GITEA_USERNAME") ?: ""
|
|
val giteaToken = System.getenv("GITEA_TOKEN") ?: ""
|
|
|
|
docker {
|
|
springBootApplication {
|
|
baseImage.set("bellsoft/liberica-runtime-container:jre-21-slim-musl")
|
|
ports.set(listOf(8080))
|
|
images.set(setOf(
|
|
"$giteaRegistry/$giteaUser/bookmgr:${project.version}",
|
|
"$giteaRegistry/$giteaUser/bookmgr:latest"
|
|
))
|
|
jvmArgs.set(listOf("-Xmx512m", "-Dfile.encoding=UTF-8"))
|
|
}
|
|
registryCredentials {
|
|
url.set("https://$giteaRegistry")
|
|
username.set(giteaUser)
|
|
password.set(giteaToken)
|
|
}
|
|
}
|