Commit Graph

3 Commits

Author SHA1 Message Date
6889c67a44 fix(ci): Corriger les tests E2E en CI
Plusieurs problèmes empêchaient les tests E2E de passer en CI :

1. Healthcheck : L'endpoint /api nécessite une authentification et
   retournait 401, causant l'échec du healthcheck. Remplacé par
   /api/docs qui est public.

2. Mailer : L'activation de compte déclenche l'envoi d'un email via
   mailpit, qui n'est pas disponible en CI. Ajout d'une variable
   d'environnement MAILER_DSN=null://null pour désactiver l'envoi.

3. Token partagé : Chaque navigateur (chromium, firefox, webkit)
   consommait le même token, causant des échecs pour les suivants.
   Maintenant chaque navigateur crée son propre token dans beforeAll
   avec un email unique (e2e-{browser}@example.com).

4. Nettoyage : Suppression de test-utils.ts et global-setup simplifié
   car la création de token est maintenant dans le fichier de test.
2026-01-31 21:14:06 +01:00
1fd256346a feat: Infrastructure multi-tenant avec isolation par sous-domaine
Une application SaaS éducative nécessite une séparation stricte des données
entre établissements scolaires. L'architecture multi-tenant par sous-domaine
(ecole-alpha.classeo.local) permet cette isolation tout en utilisant une
base de code unique.

Le choix d'une résolution basée sur les sous-domaines plutôt que sur des
headers ou tokens facilite le routage au niveau infrastructure (reverse proxy)
et offre une UX plus naturelle où chaque école accède à "son" URL dédiée.
2026-01-31 01:03:35 +01:00
6da5996340 feat: Setup projet Classeo avec infrastructure Docker et architecture DDD
Configure l'environnement de développement complet avec Docker Compose,
structure DDD 4 Bounded Contexts, et pipeline CI/CD GitHub Actions.

Corrections compatibilité CI:
- Symfony 8 nécessite monolog-bundle ^4.0 (la v3.x ne supporte que jusqu'à Symfony 7)
- ESLint v9 nécessite flat config (eslint.config.js) - le format .eslintrc.cjs est obsolète
2026-01-30 15:31:07 +01:00