Take the Best of Both Worlds Using Terraform and Argo CD
summary
Four concrete patterns emerge for passing Terraform outputs to Argo CD with trade offs. Use DNS hostnames so apps get stable names without passing values but lose single source of truth and cannot handle secrets. Use Terraform Git provider to commit config files into the repo so Argo CD just syncs from Git but never commit secrets and adds git write permissions. Inject via Kubernetes/Helm provider creates resources (even secrets) directly in the cluster but Argo CD loses control. Use GitHub Bridge + ApplicationSet to read cluster metadata but it mainly targets Helm and still splits config. Crossplane flips roles by representing infra as Kubernetes manifests so Argo CD owns everything.
AI-written summary · about
chapters (8)
- 0:00Introduction
- 1:08Terraform vs Kubernetes
- 4:13Use DNS
- 10:32Use Git
- 13:50Inject Kubernetes resources
- 15:42GitHub Bridge
- 18:39Hacks
- 21:05Conclusion
related talks
17mTerraforming ArgoCD: The GitOps Bridge
34mInfrastructure at Scale Using ArgoCD
24mScaling GitOps Using ArgoCD Application-Sets: Lesson Learnt
27mGitOpsify Everything: When Crossplane Meets Argo CD
31mScaling Kubernetes Fleet Management Using GitOps Bridge
27mExploring Argo
27mArgoCD as the Engine of a Brownfield Migration to Kubernetes
21mMulti-Tenant ArgoCD with security and isolation
