gitops-workflow
Ajuda seu agente a automatizar implantações no Kubernetes usando GitOps. Garante que o sistema esteja sempre atualizado.
O que ela faz
Esta skill ajuda a automatizar a implantação de aplicações em Kubernetes usando Git. Ela configura ferramentas como ArgoCD ou Flux para que as mudanças feitas em um repositório Git sejam aplicadas automaticamente no seu cluster.
Quando usar
- ✓Ao configurar a implantação automática de aplicações em Kubernetes.
- ✓Quando você quer que as mudanças no código sejam aplicadas automaticamente.
- ✓Ao gerenciar a infraestrutura de forma declarativa e baseada em Git.
Exemplo do que pedir para a IA
“Configure o GitOps para o meu cluster Kubernetes usando ArgoCD.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Você define o estado desejado da sua aplicação em arquivos (declarativo) e os armazena em um repositório Git. Ferramentas como ArgoCD ou Flux monitoram esse repositório e aplicam as mudanças automaticamente no Kubernetes.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add wshobson/agents --skill gitops-workflowOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/wshobson/agents/main/plugins/kubernetes-operations/skills/gitops-workflow/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Fluxo de Trabalho GitOps
Guia completo para implementar fluxos de trabalho GitOps com ArgoCD e Flux para implantações automatizadas no Kubernetes.
Propósito
Implementar entrega contínua declarativa e baseada em Git para Kubernetes usando ArgoCD ou Flux CD, seguindo os princípios do OpenGitOps.
Quando Usar Esta Habilidade
- Configurar GitOps para clusters Kubernetes
- Automatizar implantações de aplicativos a partir do Git
- Implementar estratégias de entrega progressiva
- Gerenciar implantações multi-cluster
- Configurar políticas de sincronização automatizadas
- Configurar gerenciamento de segredos em GitOps
Princípios do OpenGitOps
- Declarativo - Todo o sistema descrito de forma declarativa
- Versionado e Imutável - Estado desejado armazenado no Git
- Puxado Automaticamente - Agentes de software puxam o estado desejado
- Reconciliado Continuamente - Agentes reconciliam o estado real vs. o desejado
Configuração do ArgoCD
1. Instalação
# Create namespace
kubectl create namespace argocd
# Install ArgoCD
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
# Get admin password
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
Referência: Veja references/argocd-setup.md para configuração detalhada
2. Estrutura do Repositório
gitops-repo/
├── apps/
│ ├── production/
│ │ ├── app1/
│ │ │ ├── kustomization.yaml
│ │ │ └── deployment.yaml
│ │ └── app2/
│ └── staging/
├── infrastructure/
│ ├── ingress-nginx/
│ ├── cert-manager/
│ └── monitoring/
└── argocd/
├── applications/
└── projects/
3. Criar Aplicação
# argocd/applications/my-app.yaml
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: my-app
namespace: argocd
spec:
project: default
source:
repoURL: https://github.com/org/gitops-repo
targetRevision: main
path: apps/production/my-app
destination:
server: https://kubernetes.default.svc
namespace: production
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
4. Padrão App de Apps
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: applications
namespace: argocd
spec:
project: default
source:
repoURL: https://github.com/org/gitops-repo
targetRevision: main
path: argocd/applications
destination:
server: https://kubernetes.default.svc
namespace: argocd
syncPolicy:
automated: {}
Configuração do Flux CD
1. Instalação
O exemplo usa Homebrew. Para outros sistemas, siga o guia oficial de instalação do Flux.
# Install the Flux CLI with Homebrew
brew install fluxcd/tap/flux
flux check --pre
# Bootstrap Flux
flux bootstrap github \
--owner=org \
--repository=gitops-repo \
--branch=main \
--path=clusters/production \
--personal
2. Criar GitRepository
apiVersion: source.toolkit.fluxcd.io/v1
kind: GitRepository
metadata:
name: my-app
namespace: flux-system
spec:
interval: 1m
url: https://github.com/org/my-app
ref:
branch: main
3. Criar Kustomization
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: my-app
namespace: flux-system
spec:
interval: 5m
path: ./deploy
prune: true
sourceRef:
kind: GitRepository
name: my-app
Políticas de Sincronização
Configuração de Sincronização Automática
ArgoCD:
syncPolicy:
automated:
prune: true # Delete resources not in Git
selfHeal: true # Reconcile manual changes
allowEmpty: false
retry:
limit: 5
backoff:
duration: 5s
factor: 2
maxDuration: 3m
Flux:
spec:
interval: 1m
prune: true
wait: true
timeout: 5m
Referência: Veja references/sync-policies.md
Entrega Progressiva
Implantação Canary com ArgoCD Rollouts
apiVersion: argoproj.io/v1alpha1
kind: Rollout
metadata:
name: my-app
spec:
replicas: 5
strategy:
canary:
steps:
- setWeight: 20
- pause: { duration: 1m }
- setWeight: 50
- pause: { duration: 2m }
- setWeight: 100
Implantação Blue-Green
strategy:
blueGreen:
activeService: my-app
previewService: my-app-preview
autoPromotionEnabled: false
Gerenciamento de Segredos
External Secrets Operator
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: db-credentials
spec:
…
Perguntas frequentes
O que é GitOps?
GitOps é uma forma de gerenciar infraestrutura e aplicações onde o Git é a única fonte da verdade. As mudanças são feitas através de 'pull requests' no Git e aplicadas automaticamente no ambiente.
Qual a diferença entre ArgoCD e Flux?
Ambos são ferramentas para implementar GitOps em Kubernetes. ArgoCD é conhecido por sua interface gráfica e recursos avançados, enquanto Flux é mais leve e focado na linha de comando.
Como gerenciar segredos (senhas, chaves) com GitOps?
É recomendado não armazenar segredos diretamente no Git. Ferramentas como External Secrets Operator ou Sealed Secrets ajudam a gerenciar segredos de forma segura, integrando-se com o GitOps.
Detalhes
Descrição original do autor
Implement GitOps workflows with ArgoCD and Flux for automated, declarative Kubernetes deployments with continuous reconciliation. Use when implementing GitOps practices, automating Kubernetes deployments, or setting up declarative infrastructure management.
repo: wshobson/agents
Popularidade
- Estrelas no GitHub
- 41 mil
- Posição no ranking
- #4883
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
screen-reader-testing
Faz seu agente testar sites usando leitores de tela para garantir que sejam acessíveis.
wshobson/agents
wcag-audit-patterns
Ajuda seu agente a auditar sites para acessibilidade e corrigir problemas de acordo com as diretrizes WCAG.
wshobson/agents
multi-reviewer-patterns
Faz seu agente coordenar revisões de código paralelas, deduplicando achados e consolidando relatórios.
wshobson/agents
parallel-debugging
Permite ao agente depurar problemas complexos com investigações paralelas e análise de causa raiz.
wshobson/agents
Skills parecidas
bun-runtime
Faz seu agente usar o Bun para rodar, organizar e testar código. Ajuda a escolher o Bun em vez de outras ferramentas e a migrar projetos existentes.
affaan-m/ECC
database-migrations
Ajuda seu agente a fazer mudanças seguras em bancos de dados. Ele garante que as alterações possam ser desfeitas e minimiza o tempo de inatividade.
affaan-m/ECC
deployment-patterns
Configura fluxos de implantação e CI/CD, containerização e estratégias de rollback para garantir lançamentos seguros.
affaan-m/ECC