Skip to main content
Un changement de code suit un pipeline automatisé de bout en bout : du push sur GitHub jusqu’à la bascule progressive du trafic sur le cluster. Ce cycle est entièrement piloté par GitOps : aucune intervention manuelle sur le cluster n’est nécessaire.
1

Push du code sur GitHub

Vous poussez votre code sur le dépôt de l’organisation kaeyros-analytics-org. Le tag de version (sémantique ou SHA) est créé selon la convention du projet.
2

Construction et publication de l'image

GitHub Actions se déclenche automatiquement, construit l’image Docker et la publie sur ghcr.io/kaeyros-analytics-org/<image>:<tag>.
3

Détection par argocd-image-updater

L’outil argocd-image-updater, qui scrute ghcr.io en continu, détecte le nouveau tag en quelques minutes (fréquence de polling configurée).
4

Écriture du tag dans l'Application

L’image-updater écrit le nouveau tag dans les paramètres Helm de l’Application ArgoCD concernée (méthode write-back-method: argocd). Le fichier de valeurs dans Git reste inchangé.
5

Application par ArgoCD

ArgoCD détecte la modification de l’Application, rend le chart Helm avec les nouvelles valeurs et applique les ressources sur le cluster.
6

Bascule progressive par Argo Rollouts

Si l’application utilise le chart rollout-v2, Argo Rollouts déploie la nouvelle version par paliers canary : 10 %, 25 %, 50 %, 75 %, 100 %. Le temps total par défaut est d’environ 10 minutes.
7

Notification par courriel

Un courriel est envoyé à devops@kaeyros-analytics.com pour signaler la fin du déploiement ou toute anomalie détectée.

Changement de configuration (pas de code)

Pour un changement de configuration uniquement (variable d’environnement, ressources CPU/mémoire, domaine d’ingress), le cycle est plus court :
  1. Modifiez le fichier de valeurs correspondant dans argo-production/values/
  2. Poussez sur la branche main
  3. ArgoCD détecte le changement et applique directement (pas d’image-updater, pas de canary)
Les changements de config passent plus vite car ils ne nécessitent ni build Docker, ni détection de nouvelle image, ni paliers canary. ArgoCD les applique en quelques dizaines de secondes.
Si vous devez annuler un déploiement canary en cours, utilisez la commande kubectl argo rollouts abort <app>-rollout-v2 -n <ns>. Voir la page Canary pour les détails des commandes.