refactor(infra): Restrukturierung Config-Ordner & Einführung von Docker-Profilen

Umfangreiches Refactoring der Projektkonfiguration zur klaren Trennung von Build-, Runtime- und Applikations-Logik.

Änderungen im Detail:
- Struktur: Neuorganisation des `config/` Verzeichnisses in logische Bereiche:
  - `config/docker`: Reine Infrastruktur-Configs (Postgres, Redis, Nginx, Monitoring).
  - `config/quality`: Statische Code-Analyse (Detekt, Lint).
  - `config/app`: Gemeinsame Spring-Boot-Konfigurationen.
- Docker Compose:
  - Einführung von Profilen (`infra`, `backend`, `ops`, `gui`, `tools`) für gezieltes Starten von Teilbereichen.
  - Anpassung aller Volume-Pfade auf die neue Struktur.
- Spring Boot Config:
  - Zentralisierung gemeinsamer Einstellungen (Datasource, Redis, JPA) in `config/app/base-application.yml`.
  - Parametrisierung der Hosts für nahtlosen Wechsel zwischen Docker und Localhost.
  - Bereinigung der service-spezifischen `application.yaml` Dateien (z.B. Ping-Service).
- Cleanup: Entfernen redundanter "Ghost-Files" (`versions.toml`, `central.toml`, `config/.env`), um eine echte Single Source of Truth (SSoT) zu gewährleisten.
This commit is contained in:
2025-12-10 15:25:10 +01:00
parent 8221a7b915
commit f402fbaf19
45 changed files with 171 additions and 729 deletions
+52
View File
@@ -0,0 +1,52 @@
build:
maxIssues: 0
excludeCorrectable: false
config:
validation: true
warningsAsErrors: false
processors:
active: true
console-reports:
active: true
exclude:
- 'ProjectStatisticsReport'
- 'ComplexityReport'
- 'NotificationReport'
comments:
active: true
AbsentOrWrongFileLicense:
active: false
style:
active: true
MagicNumber:
active: false
WildcardImport:
active: false
MaxLineLength:
active: true
maxLineLength: 140
UnusedImports:
active: true
complexity:
active: true
LongMethod:
active: true
threshold: 80
TooManyFunctions:
active: true
thresholdInClasses: 30
performance:
active: true
potential-bugs:
active: true
exceptions:
active: true
+19
View File
@@ -0,0 +1,19 @@
default: true
# Entspannte Regeln für Entwickler-Dokumentation
MD013: false # Line length - zu restriktiv für technische Docs
MD033: false # Inline HTML - manchmal nützlich für Diagramme/Badges
MD041: false # First line heading - README.md hat oft Badges
# Erlaubte Heading-Duplikate (wichtig für API-Docs)
MD024:
siblings_only: true
# Lockere Listen-Indentation
MD007:
indent: 2
# Code-Blöcke brauchen Language-Tags
MD040: true
MD046:
style: fenced
+17
View File
@@ -0,0 +1,17 @@
# Generierte Dateien ignorieren
docs/api/generated/
build/
node_modules/
kotlin-js-store/
# Externe Dokumentation
.junie/
# Temporäre/Legacy-Dateien
.vscode/
.idea/
.fleet/
# Spezielle Markdown-Dateien
CHANGELOG.md
LICENSE
+6
View File
@@ -0,0 +1,6 @@
extends:
- spectral:oas
rules:
# Keep defaults from spectral:oas; tweak minimal project-specific preferences here if needed
info-contact: warn
+5
View File
@@ -0,0 +1,5 @@
StylesPath = .junie/vale
MinAlertLevel = warning
[*.md]
BasedOnStyles = Vale, MoCode