fix(front,db,ci): déploiement web, API même origine, Flutter 3.29, schéma validations

Frontend (prod web):
- Image builder Flutter 3.29.3 (Dockerfile + workflow CI alignés)
- web/index.html: bootstrap Flutter 3.29 (flutter_bootstrap.js), scripts pdf.js conservés
- Dockerfile: rm html avant COPY pour éviter l’index « Welcome to nginx »
- nginx: server_name _ pour Traefik
- env: sur le web, API = Uri.base.origin si pas de API_BASE_URL (évite mixed content http/https)
- auth: message d’erreur réseau avec type/détail si non-Exception
- CGU/PDF: commentaire sans mention Flutter 3.19 obsolète
- pubspec.lock: résolution dépendances Flutter 3.29

Base de données & doc:
- BDD.sql: validations.commentaire, valide_par, FK ON DELETE SET NULL + commentaire
- patch 2026-04-17: valide_par avec ON DELETE SET NULL
- patch 2026-04-18: FK validations en SET NULL sur bases existantes
- seed: statut validation « valide » (enum)
- FK_POLICIES.md: valide_par
- doc workflow: Flutter 3.29.3

Made-with: Cursor
This commit is contained in:
2026-04-22 18:48:17 +02:00
parent fc86181a73
commit 2c746ceff3
15 changed files with 110 additions and 96 deletions
+5 -1
View File
@@ -1,5 +1,5 @@
# Stage builder
FROM ghcr.io/cirruslabs/flutter:3.19.0 AS builder
FROM ghcr.io/cirruslabs/flutter:3.29.3 AS builder
WORKDIR /app
COPY pubspec.* ./
RUN flutter pub get
@@ -8,6 +8,10 @@ RUN flutter build web --release
# Stage production
FROM nginx:alpine
# Image nginx:alpine contient déjà index.html « Welcome to nginx ».
# Un merge de dossiers sans nettoyage peut laisser ce fichier si le build
# Flutter n’écrase pas tous les fichiers → SPA invisible. On vide dabord.
RUN rm -rf /usr/share/nginx/html/*
COPY nginx.conf /etc/nginx/conf.d/default.conf
COPY --from=builder /app/build/web /usr/share/nginx/html