Annotation de suivi
Annotation de suivi : annotation argocd.argoproj.io/tracking-id qu'Argo CD pose sur chaque ressource qu'il applique, de la forme <application>:<groupe>/<type>:<namespace>/<nom>. C'est le comportement par défaut depuis Argo CD 3.0 ; les versions 2.x utilisaient l'étiquette app.kubernetes.io/instance, souvent posée aussi par les charts Helm, au risque de collisions.
Grâce à elle, Argo CD sait quelles ressources il gère : il peut élaguer celles qui ont disparu de Git, ce qu'un simple kubectl apply en boucle ne sait pas faire. Elle permet aussi l'adoption sans redémarrage : une ressource existante, identique à ce que dit Git, ne reçoit que cette annotation à la première synchronisation. Une Application recréée sous le même nom (par un ApplicationSet, par exemple) retrouve ses ressources. Deux Applications qui rendent le même objet se le disputent en réécrivant l'annotation à chaque synchronisation ; l'option FailOnSharedResource=true fait échouer la synchronisation à la place.
Dans les cours
- GitOps avec Argo CD, leçon 3 : L'Application en détail
- GitOps avec Argo CD, leçon 2 : Installer Argo CD et déployer une application
- GitOps avec Argo CD, leçon 6 : ApplicationSet : des applications en série
- GitOps avec Argo CD, leçon 10 : Exploiter Argo CD