ArgoCD

GitOps continuous delivery controller for Kubernetes — the primary deployment mechanism for all cluster workloads.

Namespace: argocd Pattern: Declarative Application CRDs synced from git repos

How It Works

ArgoCD watches git repositories and synchronises Kubernetes manifests into the cluster. Each deployable system has an ArgoCD Application resource (seed) defined in k8s-lab:

  • Root seed (_init/) — bootstraps ArgoCD itself and core infrastructure
  • Other seeds (other-seeds/) — per-application seeds (dojo, wiki, ai-dev, etc.)
  • Sync policy: automated prune + self-heal on all applications

Seed Structure

Seeds live in k8s-lab/other-seeds/ as YAML Application manifests. Each points to a source repo + path containing kustomize/helm manifests:

spec:
  source:
    repoURL: https://github.com/craigedmunds/<repo>.git
    path: k8s/base
  destination:
    namespace: code-server
  syncPolicy:
    automated:
      prune: true
      selfHeal: true

Applications Managed

ApplicationRepoPathNamespace
ai-devcraigedmunds/ai-devinfrastructure/kustomize/overlays/labcode-server
dojocraigedmunds/dojok8s/basecode-server
wikicraigedmunds/wikik8s/basecode-server
image-factorycraigedmunds/image-factoryk8s/code-server
market-makercraigedmunds/market-makingk8s/code-server
observabilityk8s-labcomponents/observabilitymonitoring
remote-developmentk8s-labcomponents/remote-developmentcode-server
workspace-rootcraigedmunds/workspace-root.