Aller au contenu

Hook de synchronisation

Hook de synchronisation (en anglais resource hook) : ressource marquée par l'annotation argocd.argoproj.io/hook, qu'Argo CD exécute à un moment précis d'une synchronisation au lieu de la traiter comme une ressource ordinaire. Les phases sont PreSync (avant l'application des ressources), Sync (pendant, dans l'ordre des vagues), PostSync (après que tout est appliqué et sain), SyncFail (en cas d'échec), PreDelete (depuis Argo CD 3.3) et PostDelete ; Skip n'est jamais appliqué. Un hook est le plus souvent un Job : migration de base, test de fumée, notification. Les hooks Helm d'un chart sont traduits en hooks Argo CD.

Un hook ne fait pas partie de l'état de l'application : il n'est ni Synced ni OutOfSync. Sa politique de suppression (argocd.argoproj.io/hook-delete-policy) vaut BeforeHookCreation par défaut, ce qui garde le dernier Job et ses journaux jusqu'au passage suivant ; HookSucceeded et HookFailed l'effacent après succès ou échec. Un hook Sync s'exécute à chaque synchronisation complète : une migration doit être idempotente. Une synchronisation partielle (auto-réparation) n'exécute pas les hooks. Un hook s'exécute avec les droits de l'application, et se relit comme le reste du dépôt.

Dans les cours

Voir aussi