From 8f5267d8954b22c95fe0358b55341ac7655901c2 Mon Sep 17 00:00:00 2001 From: dahoud Date: Mon, 2 Feb 2026 00:42:02 +0000 Subject: [PATCH] Refactoring --- .../resources/application-prod.properties | 20 +++++++-------- src/main/resources/application.properties | 25 +++++++++++-------- 2 files changed, 25 insertions(+), 20 deletions(-) diff --git a/src/main/resources/application-prod.properties b/src/main/resources/application-prod.properties index 7956f81..1756296 100644 --- a/src/main/resources/application-prod.properties +++ b/src/main/resources/application-prod.properties @@ -1,19 +1,19 @@ # ==================================================================== # AfterWork Server - Configuration PRODUCTION (profil prod) # ==================================================================== -# Chargé avec QUARKUS_PROFILE=prod (Kubernetes ConfigMap). -# Ce fichier remplace application-production.properties pour cohérence -# avec le déploiement (QUARKUS_PROFILE=prod). +# Chargé avec QUARKUS_PROFILE=prod (Kubernetes ConfigMap). +# Ce fichier remplace application-production.properties pour cohérence +# avec le déploiement (QUARKUS_PROFILE=prod). # ==================================================================== # HTTP - Chemin de base de l'API # ==================================================================== -# Permet d'accéder à l'API via https://api.lions.dev/afterwork +# Permet d'accéder à l'API via https://api.lions.dev/afterwork # # IMPORTANT - Configuration Ingress requise: -# Cette application utilise quarkus.http.root-path pour être "context-aware", -# ce qui permet à Swagger UI de générer les bonnes URLs. -# L'Ingress Kubernetes DOIT préserver le chemin complet (PAS de rewrite-target). +# Cette application utilise quarkus.http.root-path pour être "context-aware", +# ce qui permet à Swagger UI de générer les bonnes URLs. +# L'Ingress Kubernetes DOIT préserver le chemin complet (PAS de rewrite-target). # # Configuration Ingress correcte: # - path: /afterwork @@ -32,9 +32,9 @@ quarkus.smallrye-openapi.path=/openapi quarkus.smallrye-openapi.servers=https://api.lions.dev # ==================================================================== -# Base de données PostgreSQL +# Base de données PostgreSQL # ==================================================================== -# IMPORTANT: Les credentials doivent être fournis via variables d'environnement +# IMPORTANT: Les credentials doivent être fournis via variables d'environnement # en production (Kubernetes Secrets ou Vault). quarkus.datasource.db-kind=postgresql quarkus.datasource.jdbc.url=jdbc:postgresql://${DB_HOST:postgresql-service.postgresql.svc.cluster.local}:${DB_PORT:5432}/${DB_NAME:mic-after-work-server-impl-quarkus-main} @@ -55,7 +55,7 @@ quarkus.flyway.baseline-version=1 quarkus.flyway.validate-on-migrate=true # ==================================================================== -# Hibernate ORM - Mode validation (Flyway gere le schema) +# Hibernate ORM - Mode validation (Flyway gère le schema) # ==================================================================== quarkus.hibernate-orm.database.generation=none quarkus.hibernate-orm.log.sql=false diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 5cacfc3..653f958 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -59,21 +59,26 @@ afterwork.email.from=${MAILER_FROM:noreply@lions.dev} # ==================================================================== quarkus.http.host=0.0.0.0 quarkus.http.port=8080 +# Chemin de base de l'API (fixé au build). Profil dev surcharge via application-dev.properties si besoin. +quarkus.http.root-path=/afterwork # ==================================================================== -# Base de données (configuration par défaut pour les tests) +# Base de données (défaut = PRODUCTION pour que le JAR soit prêt pour la prod) # ==================================================================== -# Cette configuration est utilisée par défaut si aucun profil n'est spécifié -# Les profils dev/prod/production surchargent cette configuration -quarkus.datasource.db-kind=h2 -quarkus.datasource.jdbc.url=jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1 -quarkus.datasource.username=sa -quarkus.datasource.password= -quarkus.datasource.jdbc.driver=org.h2.Driver +# Quarkus fixe db-kind, jdbc.driver et root-path au BUILD. Si on met H2 ici, le JAR +# ne pourra pas utiliser PostgreSQL en prod. Donc on met la config prod par défaut ; +# les profils dev/test surchargent avec H2 (application-dev.properties et %test en test). +quarkus.datasource.db-kind=postgresql +quarkus.datasource.jdbc.url=jdbc:postgresql://${DB_HOST:postgresql-service.postgresql.svc.cluster.local}:${DB_PORT:5432}/${DB_NAME:mic-after-work-server-impl-quarkus-main} +quarkus.datasource.username=${DB_USERNAME:lionsuser} +quarkus.datasource.password=${DB_PASSWORD} +quarkus.datasource.jdbc.driver=org.postgresql.Driver +quarkus.datasource.jdbc.max-size=20 +quarkus.datasource.jdbc.min-size=5 quarkus.datasource.devservices.enabled=false -# Hibernate ORM (par défaut) -quarkus.hibernate-orm.database.generation=drop-and-create +# Hibernate ORM (prod : Flyway gère le schéma ; dev/test surchargent) +quarkus.hibernate-orm.database.generation=none quarkus.hibernate-orm.log.sql=false # ====================================================================