LernApp/build.gradle.kts
Oliver Wallisch bc166cae62
Some checks failed
CI Pipeline / lint-and-test (pull_request) Failing after 1m19s
feat: integrated h5p, new endpoints and cli tool to generate new tasks
2026-09-14 23:29:37 +02:00

63 lines
1.8 KiB
Plaintext

plugins {
alias(libs.plugins.kotlin.jvm)
alias(ktorLibs.plugins.ktor)
id("org.jlleitschuh.gradle.ktlint") version "12.1.0"
kotlin("plugin.serialization") version "2.0.0"
}
group = "com.oliver.kidio.backend"
version = "1.0.0-SNAPSHOT"
application {
mainClass = "io.ktor.server.netty.EngineMain"
}
ktor {
openApi {
enabled = true // Aktiviert die OpenAPI-Code-Generierung
codeInferenceEnabled = true
}
}
kotlin {
jvmToolchain(21)
}
dependencies {
implementation(ktorLibs.server.config.yaml)
implementation(ktorLibs.server.core)
implementation(ktorLibs.server.netty)
implementation("io.ktor:ktor-server-openapi")
// JWT Authentication
implementation("io.ktor:ktor-server-auth")
implementation("io.ktor:ktor-server-auth-jwt")
implementation(libs.logback.classic)
// Bcrypt
implementation("org.mindrot:jbcrypt:0.4")
// JSON-Unterstützung und Serialization
implementation("io.ktor:ktor-server-content-negotiation-jvm")
implementation("io.ktor:ktor-serialization-kotlinx-json-jvm")
// postgres
implementation("org.postgresql:postgresql:42.7.3")
implementation("org.jetbrains.exposed:exposed-core:0.50.0")
implementation("org.jetbrains.exposed:exposed-dao:0.50.0")
implementation("org.jetbrains.exposed:exposed-jdbc:0.50.0")
testImplementation(kotlin("test"))
testImplementation(ktorLibs.server.testHost)
// redis
implementation("redis.clients:jedis:5.1.2")
}
tasks.register<JavaExec>("runIngestion") {
group = "application"
description = "Runs the standalone H5P/ZUM task ingestion CLI tool"
mainClass.set("com.oliver.kidio.backend.ingestion.H5PIngestionCli")
classpath = sourceSets["main"].runtimeClasspath
standardInput = System.`in`
}