Updated `MASTER_ROADMAP_2026_Q1.md` to reflect completed Redis-to-Valkey migration and Keycloak production configuration. Adjusted property paths in `base-application.yaml` and session logs with corrected environment variable names. Verified end-to-end Docker stability and roadmap alignment. Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
88 lines
2.8 KiB
YAML
88 lines
2.8 KiB
YAML
spring:
|
|
application:
|
|
name: meldestelle
|
|
|
|
# --- ZENTRALE DATENBANK KONFIGURATION ---
|
|
datasource:
|
|
url: ${SPRING_DATASOURCE_URL:jdbc:postgresql://localhost:5432/pg-meldestelle-db}
|
|
username: ${SPRING_DATASOURCE_USERNAME:pg-user}
|
|
password: ${SPRING_DATASOURCE_PASSWORD:pg-password}
|
|
driver-class-name: org.postgresql.Driver
|
|
|
|
# --- JPA / HIBERNATE DEFAULTS ---
|
|
jpa:
|
|
database-platform: org.hibernate.dialect.PostgreSQLDialect
|
|
hibernate:
|
|
ddl-auto: validate # In Production/Docker nutzen wir Flyway!
|
|
open-in-view: false
|
|
properties:
|
|
hibernate:
|
|
format_sql: true
|
|
|
|
# --- FLYWAY MIGRATION ---
|
|
flyway:
|
|
enabled: ${SPRING_FLYWAY_ENABLED:true}
|
|
baseline-on-migrate: true
|
|
locations: classpath:db/migration
|
|
|
|
# --- VALKEY KONFIGURATION (Redis-protokollkompatibel, Spring nutzt spring.data.redis.*) ---
|
|
data:
|
|
redis:
|
|
host: ${SPRING_DATA_VALKEY_HOST:localhost}
|
|
port: ${SPRING_DATA_VALKEY_PORT:6379}
|
|
password: ${SPRING_DATA_VALKEY_PASSWORD:}
|
|
connect-timeout: 5s
|
|
timeout: 2s
|
|
|
|
# --- CONSUL SERVICE DISCOVERY ---
|
|
cloud:
|
|
consul:
|
|
host: ${SPRING_CLOUD_CONSUL_HOST:localhost}
|
|
port: ${SPRING_CLOUD_CONSUL_PORT:8500}
|
|
enabled: ${SPRING_CLOUD_CONSUL_ENABLED:true}
|
|
discovery:
|
|
enabled: ${SPRING_CLOUD_CONSUL_DISCOVERY_ENABLED:true}
|
|
register: ${SPRING_CLOUD_CONSUL_DISCOVERY_REGISTER:true}
|
|
prefer-ip-address: ${SPRING_CLOUD_CONSUL_DISCOVERY_PREFER_IP_ADDRESS:true}
|
|
health-check-path: ${SPRING_CLOUD_CONSUL_DISCOVERY_HEALTH_CHECK_PATH:/actuator/health}
|
|
health-check-interval: 10s
|
|
instance-id: ${spring.application.name}:${random.value}
|
|
service-name: ${spring.application.name}
|
|
|
|
# --- SECURITY (OAUTH2 RESOURCE SERVER) ---
|
|
security:
|
|
oauth2:
|
|
resourceserver:
|
|
jwt:
|
|
issuer-uri: ${SPRING_SECURITY_OAUTH2_RESOURCESERVER_JWT_ISSUER_URI:http://localhost:8180/realms/meldestelle}
|
|
jwk-set-uri: ${SPRING_SECURITY_OAUTH2_RESOURCESERVER_JWT_JWK_SET_URI:http://localhost:8180/realms/meldestelle/protocol/openid-connect/certs}
|
|
|
|
# --- OBSERVABILITY (ACTUATOR & ZIPKIN) ---
|
|
management:
|
|
endpoints:
|
|
web:
|
|
exposure:
|
|
include: "health,info,prometheus,metrics"
|
|
endpoint:
|
|
health:
|
|
show-details: always
|
|
probes:
|
|
enabled: true
|
|
tracing:
|
|
sampling:
|
|
probability: ${MANAGEMENT_TRACING_SAMPLING_PROBABILITY:1.0}
|
|
zipkin:
|
|
tracing:
|
|
endpoint: ${MANAGEMENT_ZIPKIN_TRACING_ENDPOINT:http://localhost:9411/api/v2/spans}
|
|
|
|
# --- LOGGING ---
|
|
logging:
|
|
level:
|
|
root: INFO
|
|
at.mocode: DEBUG
|
|
org.springframework.web: INFO
|
|
org.springframework.security: INFO
|
|
org.springframework.cloud.gateway: INFO
|
|
pattern:
|
|
level: "%5p [${spring.application.name:},%X{traceId:-},%X{spanId:-}]"
|