Implement tenant isolation for Entries Service: switch transaction handling to tenantTransaction, introduce Flyway-based migrations for tenant schemas, and add JdbcTenantRegistry with control schema support. Include migration tests, schema initializations, and E2E tenant isolation. Update configuration and roadmap with completed A-1 tasks.

This commit is contained in:
2026-04-02 21:56:00 +02:00
parent b787504474
commit 9902b2bb44
19 changed files with 591 additions and 43 deletions
@@ -24,6 +24,8 @@ dependencies {
implementation(libs.bundles.spring.boot.secure.service)
// Common service extras
implementation(libs.spring.boot.starter.validation)
// JSON + Web: ensure Spring Web (incl. HttpMessageConverters) is on classpath
implementation("org.springframework.boot:spring-boot-starter-web")
implementation(libs.spring.boot.starter.json)
implementation(libs.postgresql.driver)
@@ -33,7 +35,9 @@ dependencies {
implementation(libs.kotlin.reflect)
implementation(libs.caffeine)
implementation(libs.spring.web)
// spring-web is included via spring-boot-starter-web above; keep explicit add if alias resolves elsewhere
// JDBC for JdbcTemplate-based TenantRegistry
implementation("org.springframework.boot:spring-boot-starter-jdbc")
// Resilience Dependencies (manuell aufgelöst)
implementation(libs.resilience4j.spring.boot3)
@@ -45,8 +49,12 @@ dependencies {
implementation(libs.exposed.core)
implementation(libs.exposed.jdbc)
implementation(libs.exposed.kotlin.datetime)
// Flyway runtime (provided by BOM, ensure availability in this module)
implementation(libs.flyway.core)
implementation(libs.flyway.postgresql)
testImplementation(projects.platform.platformTesting)
testImplementation(libs.bundles.testing.jvm)
testImplementation(libs.spring.boot.starter.test)
testImplementation("com.h2database:h2")
}