Conversation
Kaiohz
left a comment
There was a problem hiding this comment.
Review — PR #18 : Remove cache-to mode=max from CD workflow
Verdict : APPROVE avec suggestions mineures ✅
Score : 8/10
Résumé du diff
Suppression d'une seule ligne dans .github/workflows/cd.yaml (step "Build Docker image for scanning (amd64)") :
- cache-to: type=gha,mode=maxLe cache-from: type=gha est conservé. Le step final "Build and push Docker image" garde son cache-to: type=gha,mode=max (intact).
Pourquoi ce fix est pertinent
J'ai vérifié l'historique récent des runs CD : le run #29144047551 (feat/ui-improvements, 2026-07-11 07:10:34 UTC) a échoué exactement sur ce step avec exit code 7, soit typiquement un timeout/erreur réseau sur l'upload du cache GHA en mode max. Le mode max push l'intégralité des layers comme nouveaux blobs (pas de hardlink vers un cache parent) et le step "Build for scanning" :
- n'est pas un build final (l'image est juste
load: truepuis scannée par Trivy), - n'a pas besoin d'enrichir le cache GHA global,
- double la consommation de stockage cache (10GB/repo par défaut).
Le fix est minimal, ciblé, et corrige bien la cause racine identifiée dans le run raté.
Points positifs ✅
- Ciblé : 1 ligne / 1 fichier, pas de scope creep.
- Cohérent : le step final conserve le cache-to (utile pour les déploiements multi-platforms), le step intermédiaire l'abandonne (pas nécessaire pour un scan).
- Pas de régression :
cache-from: type=ghareste en place → les builds scanner restent aussi rapides. - Pas d'impact sur le multi-platform : la PR ne touche pas le step "Build and push Docker image" qui gère linux/amd64 + linux/arm64.
Suggestions d'amélioration (non bloquantes) 💡
-
PR body vide — ajouter une ligne de contexte pour les reviewers, par ex. :
"Le run CD #29144047551 a échoué sur ce step (exit 7, cache GHA timeout). Le
cache-to: mode=maxn'est pas nécessaire pour un build de scan (image jetable, pas déployée) et provoque des timeouts récurrents." -
Convention de nommage de branche —
fix/cdest générique. Si vous utilisez Jira/Vite, un format typeSOL-XXX/fix-cd-cacheaiderait le tracking. (Hors scope ici, juste un rappel pour les futures PRs.) -
Documentation inline — un commentaire YAML au-dessus du step scanner du type :
# Pas de cache-to: image jetable pour scan Trivy, on évite les timeouts GHA cache.éviterait qu'un dev futur "répare" en remettant
cache-to: type=gha,mode=maxet reproduise le bug. -
Considérer
cache-from: type=gha,mode=max— pour rester symétrique : on lit depuis tout le cache GHA dispo, on n'écrit rien. Bénéfice marginal mais plus propre conceptuellement. (Optionnel.)
Verdict
Le fix est correct et ship-able. Score 8/10 — perd 2 points sur : (1) PR body absent, (2) aucune doc inline pour expliquer le pourquoi et éviter une régression future.
🚀 Une fois merged, surveiller le prochain run CD pour confirmer la disparition de l'exit 7.
Review postée via SoluBot — SoluDevTech
No description provided.