Skip to content

[Claude] Redéploiement ArgoCD via ENV COMMIT + hostname dev - #2

Merged
valentin2105 merged 5 commits into
mainfrom
dev
Aug 6, 2026
Merged

[Claude] Redéploiement ArgoCD via ENV COMMIT + hostname dev#2
valentin2105 merged 5 commits into
mainfrom
dev

Conversation

@valentin2105

Copy link
Copy Markdown
Contributor

Objectif

Déclencher un redéploiement ArgoCD à chaque build sans changer le tag de l'image.

Mécanisme

Le nouveau job CI deploy (après build) réécrit l'ENV var COMMIT du Deployment avec le SHA
court dans _k8s/overlays/<env>/commit-patch.yaml, puis commite sur la branche courante.
Modifier une ENV var change le pod template → ArgoCD détecte la dérive, sync, et Kubernetes fait
un rolling update. Avec imagePullPolicy: Always, les nouveaux pods tirent l'image fraîche du
même tag.

Mapping : devoverlays/dev, mainoverlays/prod.

Anti-boucle CI (3 protections)

  1. Push authentifié avec GITHUB_TOKEN → ne déclenche aucun workflow (garantie GitHub).
  2. Marqueur de skip CI dans le message de commit du bot.
  3. on.push.paths-ignore sur _k8s/overlays/*/commit-patch.yaml.

Autres changements

  • Le SHA déployé est affiché en petit, en dessous de l'IP, sur la page HTML
    (fallback unknown hors Kubernetes).
  • Hostname dev renommé : demoapp-dev.k8s.lab.ops.nc (au lieu de dev.demoapp.*).
  • README + CLAUDE.md à jour.

Vérifications effectuées sur dev

  • Run CI complet vert : TestBuild & PushTrigger ArgoCD redeploy.
  • Le bot a bien commité COMMIT="5148b4e" dans l'overlay dev (commit cfa7041).
  • Aucun run CI déclenché par ce commit du bot — pas de boucle.
  • kubectl kustomize _k8s/overlays/dev : COMMIT fusionne sans écraser les autres ENV, image
    toujours sur le tag :dev, hostname demoapp-dev.k8s.lab.ops.nc.
  • Conteneur testé avec COMMIT=a1b2c3d : SHA affiché sous l'IP, rootfs read-only, uid 10001.

À valider côté ArgoCD avant merge.

🤖 Generated with Claude Code

valentin2105 and others added 5 commits August 6, 2026 19:54
- Job CI "deploy" : réécrit l'ENV COMMIT (SHA court) dans
  _k8s/overlays/<env>/commit-patch.yaml puis commite sur la branche.
  Le tag d'image reste inchangé ; le changement de pod template suffit
  à faire resynchroniser ArgoCD et rouler les pods.
- Anti-boucle CI : push via GITHUB_TOKEN (ne déclenche pas de workflow),
  message [skip ci], et paths-ignore sur commit-patch.yaml.
- App : ENV COMMIT affichée en petit sous l'IP (fallback "unknown").
- Hostname dev : demoapp-dev.k8s.lab.ops.nc (au lieu de dev.demoapp.*).
- Doc README + CLAUDE.md mises à jour.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…ommit

GitHub scanne tout le message (sujet + corps) : écrire le marqueur
littéralement dans un message empêche silencieusement tout run CI.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…ue visite

Sans en-tête de cache, un navigateur peut resservir la page depuis son
cache et l'INCR Redis n'a pas lieu.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@valentin2105
valentin2105 merged commit 0fbb41b into main Aug 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant