Promotion d'une image dev → staging → prod

Promotion d'une image dev → staging → prod A workflow diagram generated by Archify. 01 / Youssef (gestes manuels) 02 / GitLab CI (pipeline de MR) 03 / Cluster EKS (ArgoCD) 04 / Contrôle après merge EX / Arrêt Palier staging Palier prod Gate bloquant promote.sh dev staging · recopie le newTag de dev · Youssef (gestes manuels) › Palier staging promote.sh dev staging recopie le newTag de dev promote.sh staging prod · recopie le newTag de staging · Youssef (gestes manuels) › Palier prod promote.sh staging prod recopie le newTag de staging MR staging · kube-linter + SAST · GitLab CI (pipeline de MR) › Palier staging · pas de gate E2E MR staging kube-linter + SAST pas de gate E2E e2e-staging · API + Playwright · GitLab CI (pipeline de MR) › Gate bloquant › Palier prod · bloquant e2e-staging API + Playwright bloquant Sync staging · nouveaux pods · Cluster EKS (ArgoCD) › Palier staging Sync staging nouveaux pods Sync prod · même image, sans rebuild · Cluster EKS (ArgoCD) › Palier prod Sync prod même image, sans rebuild e2e-prod · /version + readonly · Contrôle après merge › Palier prod e2e-prod /version + readonly Merge impossible · prod ne bouge pas · Arrêt › Palier prod Merge impossible prod ne bouge pas rouge vert + merge merge push + MR push + MR push develop Healthy Legend User UI Agent logic Policy Cloud service

Une seule image

  • • Aucun rebuild : promote.sh change une ligne newTag par overlay
  • • Le tag deployed-<sha> nomme l'image déjà scannée en dev
  • • Staging est un palier obligatoire, pas de saut dev → prod (ADR 029)

Qui fait quoi

  • • Youssef lance promote.sh et merge les deux MR
  • • GitLab CI teste, ArgoCD déploie ce que develop contient
  • • Le lendemain à 8 h, registry-scan relit l'image prod

Pièges

  • • Pousser la branche ne lance rien : le pipeline naît avec la MR
  • • Config infra active : e2e-staging ne tourne pas, le vert ne prouve rien
  • • Cluster éteint : staging injoignable, aucune promotion prod