fixing gradle build

This commit is contained in:
2025-07-30 00:01:22 +02:00
parent 965aa68fa7
commit ea75bbdb24
33 changed files with 497 additions and 175 deletions
+21 -34
View File
@@ -1,68 +1,55 @@
plugins {
kotlin("jvm")
alias(libs.plugins.kotlin.jvm)
alias(libs.plugins.kotlin.serialization)
alias(libs.plugins.ktor)
application
}
application {
mainClass.set("at.mocode.infrastructure.gateway.ApplicationKt")
}
// Configure tests to use JUnit Platform
tasks.withType<Test> {
useJUnitPlatform()
}
dependencies {
// --- Interne Module ---
// Der Gateway benötigt nur die Kern-Definitionen und Utilities.
implementation(projects.platform.platformDependencies)
implementation(projects.core.coreDomain)
implementation(projects.core.coreUtils)
// Der Gateway nutzt den Auth-Client, um Tokens zu validieren.
implementation(projects.infrastructure.auth.authClient)
implementation(projects.infrastructure.monitoring.monitoringClient)
// Domain modules
implementation(projects.masterdata.masterdataDomain)
implementation(projects.members.membersDomain)
implementation(projects.horses.horsesDomain)
implementation(projects.events.eventsDomain)
// !!! WICHTIG: KEINE direkten Abhängigkeiten zu den Domänen- oder
// Infrastruktur-Modulen der Backend-Services mehr!
// Infrastructure modules
implementation(projects.masterdata.masterdataInfrastructure)
implementation(projects.members.membersInfrastructure)
implementation(projects.horses.horsesInfrastructure)
implementation(projects.events.eventsInfrastructure)
// Ktor Server
// --- Ktor Server ---
implementation(libs.ktor.server.core)
implementation(libs.ktor.server.netty)
implementation(libs.ktor.server.contentNegotiation)
implementation(libs.ktor.server.serializationKotlinxJson)
implementation(libs.ktor.server.serialization.kotlinx.json)
implementation(libs.ktor.server.cors)
implementation(libs.ktor.server.callLogging)
implementation(libs.ktor.server.defaultHeaders)
implementation(libs.ktor.server.statusPages)
implementation(libs.ktor.server.auth)
implementation(libs.ktor.server.authJwt)
implementation(libs.ktor.server.openapi)
implementation(libs.ktor.server.swagger)
implementation(libs.ktor.server.rateLimit)
implementation(libs.ktor.server.metrics.micrometer)
// Monitoring and metrics
// --- OpenAPI & Swagger for Ktor ---
implementation(libs.ktor.server.openapi)
implementation(libs.ktor.server.swagger)
// --- Ktor Client (damit der Gateway Anfragen an die Backend-Services weiterleiten kann) ---
implementation(libs.ktor.client.core)
implementation(libs.ktor.client.cio) // CIO ist eine gute, asynchrone Engine
implementation(libs.ktor.client.contentNegotiation)
implementation(libs.ktor.client.serialization.kotlinx.json)
// --- Monitoring ---
implementation(libs.micrometer.prometheus)
// Rate limiting
implementation("io.github.resilience4j:resilience4j-ratelimiter:2.2.0")
// Documentation
implementation("org.springdoc:springdoc-openapi-starter-webflux-ui:2.3.0")
// Ktor Client
implementation(libs.ktor.client.core)
implementation(libs.ktor.client.cio)
implementation(libs.ktor.client.contentNegotiation)
implementation(libs.ktor.client.serializationKotlinxJson)
// --- Testing ---
testImplementation(projects.platform.platformTesting)
testImplementation(libs.ktor.server.tests)
}