Git como fonte da verdade para o estado do cluster. ArgoCD detecta divergências e reconcilia automaticamente — tudo auditável, reversível e sem kubectl manual em produção.
Todo o sistema é descrito de forma declarativa. YAMLs no Git definem o estado desejado, não scripts imperativos.
Estado desejado armazenado no Git. Histórico completo, auditoria automática, rollback por git revert.
Agentes aprovados (ArgoCD) puxam o estado desejado do Git. Nunca empurrado de fora para dentro do cluster.
Agentes observam continuamente e corrigem divergências. Se alguém fizer kubectl manual, é revertido.
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: meu-api
namespace: argocd
spec:
project: default
source:
repoURL: https://github.com/org/k8s-config
targetRevision: main
path: apps/meu-api/production
destination:
server: https://kubernetes.default.svc
namespace: production
syncPolicy:
automated:
prune: true # remove recursos deletados do Git
selfHeal: true # desfaz mudanças manuais
syncOptions:
- CreateNamespace=trueVocê revisa o diff e clica 'Sync' no painel. Indicado para produção onde mudanças precisam de aprovação humana.
ArgoCD detecta divergência e sincroniza automaticamente. Ideal para dev/staging. Pode incluir auto-pruning de recursos removidos do Git.
Além de sync automático, desfaz qualquer mudança manual feita diretamente no cluster via kubectl. Git é sempre a fonte da verdade.
values.yaml ou a tag da imagem no repo de config via PR, e o ArgoCD detecta e aplica. Isso mantém o histórico de deploys 100% no Git.