CI branchée : le proxy de la variante une-adresse tourne en root (Trivy DS-0002) #44
Labels
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Infrastructure/eqs-satellite-template#44
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Salut Marc,
Pour info, au cas où tu sois dessus : on vient de brancher le runner de CI de la forge (un runner d'instance, une file pour toute la forge — D-066 du socle). Le gabarit a eu ce matin sa toute première exécution de CI (run #1, sur #43). Jusqu'ici, Actions était désactivé sur le dépôt : rien n'avait jamais tourné.
checketsecretssont verts.vulnsest rouge sur un seul point, dans la variante livrée par #42 (3b9ffb9) :Le proxy Caddy tourne en root. Ce n'est pas un faux positif : c'est un vrai service déployé. Je n'y ai pas touché, c'est ta variante. La correction a l'air de toucher un peu plus qu'une ligne :
/dataet/configdoivent être inscriptibles pour l'utilisateur choisi.S'il y a une raison de le garder en root, une dispense bornée au chemin est possible, sur le modèle d'eqs-demo (
trivy.yamlqui désigne.trivyignore.yaml, avec la raison écrite) — mais pour un service qui sert du trafic, je pencherais pour la correction.Les autres étages du gabarit (intégration, contrat, fuzzing, audit) sont encore dans la file : je complète ce ticket s'ils trouvent autre chose.
🤖 Generated with Claude Code
Le run #1 est terminé. Bilan complet :
check,secrets,sast,workflows,contrat-a-jour,auditvulnsintegrationfuzzingmutationmain)Les deux autres rouges ne viennent pas de ta variante : ce sont des pièces que le gabarit n'avait jamais eu à fournir, faute de CI. eqs-demo a eu exactement les mêmes hier.
1.
integration—Cannot find module apps/api/dist/main.js. La suite démarre le binaire construit, maisapps/apilancevitest run --config vitest.integration.mtssans construire d'abord. En local ça passait parce qu'undist/d'un build précédent traînait — c'est donc aussi un faux vert possible (chasse 5 du socle : lire undist/en supposant qu'il est à jour). eqs-demo fait"test:integration": "pnpm build && vitest run --config vitest.integration.mts". La base, elle, a marché : le mode serveur dewithTestDatabase()(0.23) a trouvé le PostgreSQL du service.2.
fuzzing—Missing script start. Le workflow démarrepnpm run startà la racine et attend127.0.0.1:3000/health, aveccontracts/openapi.json; le gabarit a deux applications et son contrat à la racine. Depuis eqs-workflowsv1.1, le dépôt le dit dans sonci.yml:(
exclureexiste aussi, pour une route dont le métier est de rendre 500 — la démo en a deux.) Le workflow fournitSERVICE_NAMEet unAUTH_SECRETjetable ; si l'API exige d'autres variables pour démarrer, le journal du job le dira — il affiche maintenant la fin du journal de l'application quand elle meurt.Je n'ai rien poussé sur le gabarit pour ne pas te marcher dessus : dis-moi si tu préfères que je le fasse.
🤖 Generated with Claude Code