- telemetry protocol builder - server-side message handling - database migrations - telemetry persistence
46 lines
1.2 KiB
Kotlin
46 lines
1.2 KiB
Kotlin
#!/usr/bin/env kotlin
|
|
|
|
plugins {
|
|
kotlin("jvm") version "1.9.22"
|
|
kotlin("plugin.serialization") version "1.9.22"
|
|
application
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
implementation("io.ktor:ktor-server-core:2.3.7")
|
|
implementation("io.ktor:ktor-server-netty:2.3.7")
|
|
implementation("io.ktor:ktor-server-content-negotiation:2.3.7")
|
|
implementation("io.ktor:ktor-serialization-kotlinx-json:2.3.7")
|
|
implementation("io.ktor:ktor-server-websockets:2.3.7")
|
|
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.2")
|
|
implementation("ch.qos.logback:logback-classic:1.4.14")
|
|
implementation("org.mariadb.jdbc:mariadb-java-client:3.3.3")
|
|
implementation("com.zaxxer:HikariCP:5.1.0")
|
|
testImplementation(kotlin("test"))
|
|
}
|
|
|
|
application {
|
|
mainClass.set("org.pavloveugene.iot.backend.ApplicationKt")
|
|
}
|
|
|
|
tasks.jar {
|
|
manifest {
|
|
attributes["Main-Class"] = "org.pavloveugene.iot.backend.ApplicationKt"
|
|
}
|
|
|
|
from({
|
|
configurations.runtimeClasspath.get().map { zipTree(it) }
|
|
})
|
|
|
|
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
|
|
}
|
|
|
|
tasks.processResources {
|
|
from("../db/migrations") {
|
|
into("db/migration")
|
|
}
|
|
} |