Skip to content

ci: corriger l'origine admin, le timeout et les diagnostics du job e2e-admin - #19

Open
jeremie0342 wants to merge 2 commits into
masterfrom
ci/geonames-data-for-admin-e2e
Open

ci: corriger l'origine admin, le timeout et les diagnostics du job e2e-admin#19
jeremie0342 wants to merge 2 commits into
masterfrom
ci/geonames-data-for-admin-e2e

Conversation

@jeremie0342

@jeremie0342 jeremie0342 commented Aug 12, 2026

Copy link
Copy Markdown
Collaborator

Trois défauts du job e2e-admin, révélés dès qu'il a pu s'exécuter pour de vrai. Aucun ne concerne le backend.

Origine — la cause des 401. ADMIN_ORIGINS ne contenait que http://localhost:5174, alors que le navigateur de Playwright charge http://127.0.0.1:5174 (le baseURL de playwright.config.ts). Pour admin_gate ce sont deux origines distinctes, et toute écriture repartait en 401 — d'où la cascade d'« element not found » qui suivait. Les deux formes sont désormais listées.

Timeout. Les 20 minutes dataient de l'époque où le job mourait au healthcheck : la valeur n'avait jamais mesuré une exécution réelle. Les 85 tests contre un vrai backend n'y tiennent pas, le run a été coupé en plein milieu. Porté à 35.

Diagnostics. Le dump des logs backend était en if: failure(). Une annulation par timeout n'est pas un échec au sens de GitHub : l'étape a été sautée sur le seul run qui en avait besoin, me laissant sans logs ni rapport. Passé en always().


Le contournement GeoNames de la première version de cette branche est retiré. Il avait servi à prouver le diagnostic — backend ready after 3s une fois les fichiers fournis — mais le correctif appartient au backend : un service ne doit pas refuser de démarrer faute d'une donnée d'autocomplétion. C'est SKI-294, en cours, déploiement attendu demain.

Le job reste donc rouge jusque-là, et le commentaire d'en-tête dit maintenant pourquoi. La correction de l'origine ne pourra être vérifiée qu'une fois le backend capable de démarrer.

`master` est rouge depuis que ce job s'exécute pour de vrai : l'image
backend est bien publiée et démarre, mais panique avant d'écouter.

    GeoService::load(Path::new("data")).expect("Failed to load GeoNames…")

Le chemin est relatif au WORKDIR `/app`, l'image n'embarque pas ce dossier
— les fichiers sont téléchargés au setup — et l'échec est fatal. Le
healthcheck n'aboutit donc jamais et le job tombe après deux minutes.

On télécharge `countryInfo.txt` et `cities1000.txt` (les deux seuls
fichiers que `GeoService::load` ouvre), on les met en cache, et on les
monte en lecture seule sur `/app/data`.

C'est un contournement côté CI : le correctif de fond appartient au
backend, qui ne devrait pas refuser de démarrer faute d'une donnée
d'autocomplétion. Suivi en SKI-294 ; ces deux étapes disparaîtront avec.
…e-admin

Trois défauts de ce job, révélés dès qu'il a pu s'exécuter pour de vrai.

**Origine.** `ADMIN_ORIGINS` ne contenait que `http://localhost:5174`, alors
que le navigateur de Playwright charge `http://127.0.0.1:5174` — le `baseURL`
de playwright.config.ts. Pour `admin_gate` ce sont deux origines distinctes,
et toute écriture repartait en 401. Les deux formes sont désormais listées.

**Timeout.** Les 20 minutes avaient été posées quand le job mourait au
healthcheck : la valeur n'avait jamais mesuré une exécution réelle. Les 85
tests du projet admin contre un vrai backend n'y tiennent pas — le run a été
coupé en plein milieu. Porté à 35.

**Diagnostics.** Le dump des logs backend était en `if: failure()`. Une
annulation par timeout n'est pas un échec au sens de GitHub, donc l'étape a
été sautée sur le seul run qui en avait besoin : ni logs ni rapport pour
comprendre. Passé en `always()`.

Le contournement GeoNames de la version précédente de cette branche est
retiré : c'est au backend de ne pas refuser de démarrer faute d'une donnée
d'autocomplétion (SKI-294, en cours). Le job reste donc rouge jusqu'à ce
correctif, et le commentaire d'en-tête dit maintenant pourquoi.
@jeremie0342 jeremie0342 changed the title ci: fournir le jeu GeoNames au backend du job e2e-admin ci: corriger l'origine admin, le timeout et les diagnostics du job e2e-admin Aug 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant