Agent Skills: ArgoCD Cluster Bootstrapping

Complete ArgoCD cluster bootstrapping skill for diagnosing sync failures, creating root Applications (app-of-apps), curating ApplicationSets via Kustomize, and resolving missing CRD dependencies. USE WHEN argocd bootstrap OR app-of-apps pattern OR root application OR applicationset gitops management OR argocd sync failed missing CRD OR kustomize applicationset curation OR argocd cluster onboarding.

UncategorizedID: julianobarbosa/claude-code-skills/ArgocdClusterBootstrapping

Install this agent skill to your local

pnpm dlx add-skill https://github.com/julianobarbosa/claude-code-skills/tree/HEAD/skills/argocd-cluster-bootstrapping-skill/ArgocdClusterBootstrapping

Skill Files

Browse the full folder contents for ArgocdClusterBootstrapping.

Download Skill

Loading file tree…

skills/argocd-cluster-bootstrapping-skill/ArgocdClusterBootstrapping/SKILL.md

Skill Metadata

Name
ArgocdClusterBootstrapping
Description
Complete ArgoCD cluster bootstrapping skill for diagnosing sync failures, creating root Applications (app-of-apps), curating ApplicationSets via Kustomize, and resolving missing CRD dependencies. USE WHEN argocd bootstrap OR app-of-apps pattern OR root application OR applicationset gitops management OR argocd sync failed missing CRD OR kustomize applicationset curation OR argocd cluster onboarding.

ArgoCD Cluster Bootstrapping

Operational skill for bootstrapping ArgoCD clusters using the app-of-apps pattern with Kustomize-curated ApplicationSets. Covers diagnosing sync failures from missing CRDs, creating root Applications for GitOps lifecycle management, and onboarding new clusters to existing ApplicationSet generators.

Workflow Routing

| Workflow | Trigger | File | |----------|---------|------| | DiagnoseSyncFailure | "sync failed", "missing CRD", "argocd error", "OutOfSync" | Workflows/DiagnoseSyncFailure.md | | CreateRootApplication | "root application", "app-of-apps", "bootstrap argocd", "manage applicationsets" | Workflows/CreateRootApplication.md | | OnboardCluster | "add cluster", "onboard cluster", "new environment" | Workflows/OnboardCluster.md |

Examples

Example 1: Diagnose a sync failure caused by missing CRD

User: "cafehyna-hub-adp-agent is SyncFailed with missing AzureKeyVaultSecret CRD"
-> Invokes DiagnoseSyncFailure workflow
-> Traces dependency chain: adp-agent needs akv2k8s CRDs
-> Checks if akv2k8s ApplicationSet exists on cluster
-> Identifies root cause: ApplicationSet never deployed
-> Recommends fix via root Application or manual apply

Example 2: Create a root Application for GitOps ApplicationSet management

User: "Create a root Application to manage all ApplicationSets via GitOps"
-> Invokes CreateRootApplication workflow
-> Audits applicationset directory for active vs inactive files
-> Creates kustomization.yaml with curated list
-> Creates root-applicationsets.yaml Application
-> Provides bootstrap instructions for ArgoCD UI

Example 3: Add a new cluster to existing ApplicationSets

User: "Onboard cafehyna-prd cluster to the otel ApplicationSet"
-> Invokes OnboardCluster workflow
-> Reads existing ApplicationSet generator list
-> Adds new cluster element with correct URL, project, branch
-> Creates values file in argo-cd-helm-values repo
-> Validates with kustomize build

Key Patterns

  • App-of-Apps via Kustomize: Root Application watches infra-team/applicationset/ with kustomization.yaml for explicit curation
  • Multi-source Helm: ApplicationSets combine chart repo + Git values repo using $values ref
  • Sync waves: Dependencies deploy first (e.g., akv2k8s at wave -5, consumers at wave +5)
  • ServerSideApply: Prevents adoption conflicts when bringing existing resources under GitOps
  • Bootstrap chicken-and-egg: Root Application must be applied once via ArgoCD UI, then self-manages
  • Pure GitOps: No kubectl apply/patch/edit/delete — all changes via Git commits

Architecture Reference

root-applicationsets (Application)
  └── watches: infra-team/applicationset/ (Kustomize)
       ├── akv2k8s.yaml (ApplicationSet)
       ├── adp-agent.yaml (ApplicationSet)
       ├── otel.yaml (ApplicationSet)
       └── ... (curated list in kustomization.yaml)

Quick Reference

  • Root Application path: infra-team/bootstrap/root-applicationsets.yaml
  • ApplicationSet directory: infra-team/applicationset/
  • Kustomization file: infra-team/applicationset/kustomization.yaml
  • Values repo: argo-cd-helm-values/kube-addons/{addon}/{cluster}/values.yaml
  • Git repo URL: https://hyperadevops@dev.azure.com/hyperadevops/devops-team/_git/argocd

Full documentation: See workflow files in Workflows/ directory.