Skip to content

ArgoCD ​

Use ArgoCD to sync the k8s/ directory from this repo.

Basic flow ​

  1. Create an ArgoCD Application that targets the repo and path k8s/.
  2. Set the destination namespace to a2w-lucas.
  3. Add secrets for claude-auth and slack-bot.
  4. Sync the application.

Notes ​

  • Keep secrets out of Git; use Sealed Secrets or External Secrets.
  • Update image tags in k8s/ when you push new images.
  • If you already manage RBAC or PVCs separately, remove those manifests from the app.

ArgoCD patterns ​

You can manage this repo with either App of Apps or an ApplicationSet. Pick one.

App of Apps

Use a single root Application that points to a folder of child Applications. This is good when you want explicit, hand-written app definitions per component or environment.

Example layout:

  • argocd/apps/agent.yaml
  • argocd/apps/dashboard.yaml
  • argocd/apps/storage.yaml
  • argocd/apps/root.yaml (points to argocd/apps/)

ApplicationSet

Use an ApplicationSet to generate Applications from a list or directory. This is good when you have multiple environments or clusters.

Example (list generator):

yaml
apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
  name: lucas
spec:
  generators:
    - list:
        elements:
          - name: dev
            namespace: a2w-lucas
          - name: prod
            namespace: a2w-lucas
  template:
    metadata:
      name: lucas-{{name}}
    spec:
      project: default
      source:
        repoURL: https://example.com/your/repo.git
        targetRevision: main
        path: k8s
      destination:
        server: https://kubernetes.default.svc
        namespace: {{namespace}}
      syncPolicy:
        automated: {}

Short docs. Clear actions.