Aller au contenu
Nouveau cours : GitOps avec Argo CD

Nouveau cours : GitOps avec Argo CD

2 octobre 2026

Le chapitre Livrer accueille son troisième cours : GitOps avec Argo CD. Le cours GitHub Actions s'arrêtait sur un commit qui écrivait la version de l'image dans un fichier de valeurs, suivi d'un « Argo CD déploie ». Ce cours ouvre cette boîte.

Dix leçons, un laboratoire local

Tout se joue sur votre poste : un cluster kind, Argo CD 3.5 et une forge Forgejo qui tourne dans le cluster, sans compte chez un fournisseur. L'application Signalements, l'API Flask et PostgreSQL des cours précédents, y passe d'une Application écrite à la main à une plateforme complète : environnements par répertoire, promotion par demande de fusion, base de données et migration ordonnées par vagues et hooks, environnements d'aperçu par demande de fusion, production sur un second cluster.

Le cours commence sans Argo CD : la leçon 1 écrit une boucle de réconciliation en quelques lignes de Bash, pour que chaque mécanisme de l'outil ait ensuite un équivalent connu.

Ce que l'on rencontre vraiment

Les leçons s'attardent sur ce que la documentation dit peu :

  • un commit qui supprime par erreur tout le répertoire des applications ne détruit rien, parce qu'un chemin absent est une erreur de rendu et non un rendu vide ;
  • un ApplicationSet supprime un environnement entier, ressources comprises, trois minutes après un git rm, et deux réglages l'en empêchent ; la documentation de l'un d'eux décrit une valeur par défaut que le code contredit ;
  • argocd cluster add crée un compte administrateur dans le cluster cible, puis, quand votre contexte s'authentifie par certificat, enregistre à sa place le certificat d'administration de votre kubeconfig ;
  • déplacer une application vers un autre cluster laisse l'ancienne version tourner, et redéploie sans exécuter les hooks ;
  • une migration de base qui échoue laisse l'ancienne version en service, et Argo CD réessaie cinq fois sans qu'on le lui ait demandé.

La production de Lyneko

Les trois dernières leçons (secrets, sécurité, exploitation) s'appuient sur la mise en place d'Argo CD chez Lyneko : External Secrets avec Scaleway Secret Manager, connexion Google directe sans Dex et sans droits par défaut, et deux incidents racontés en détail. Le premier : une adoption de release Helm qui a supprimé une application parce que helm.sh/resource-policy: keep avait été posé sur les objets vivants, que Helm ne regarde pas. Le second : un nœud au disque presque plein, que l'installation d'Argo CD a fait passer en DiskPressure, et qui a évincé le contrôleur d'entrée d'autres applications.

Pour valider

Un quiz de vingt questions valide le niveau 100. Le lab fait assembler la plateforme du cours dans le laboratoire, et un script vérifie ses propriétés dans le cluster : projet default vidé, ApplicationSet protégé, migration en hook, secret hors de Git, aucun droit par défaut.

Dernière modification