Multi-Tenant Argo CD: Apps in Any Namespace
Every team piling Applications into argocd creates name collisions, bloated RBAC, and noisy events. Apps in Any Namespace lets each team own their Applications while keeping a shared control plane.
Articles on Kubernetes, Argo CD, GitOps, and cloud-native infrastructure.
Every team piling Applications into argocd creates name collisions, bloated RBAC, and noisy events. Apps in Any Namespace lets each team own their Applications while keeping a shared control plane.
Your app just synced but it's already OutOfSync. Mutating webhooks, defaulting controllers, and HPA all cause phantom drift. Here's how to fix it with ignoreDifferences, diff strategies, and server-side diff.
Argo CD marks unknown CRDs as Healthy by default, hiding failures behind a green dashboard. Learn how to write Lua health checks that surface real status for cert-manager, Crossplane, and your own custom resources.
Using CUE, Tanka, or another tool Argo CD doesn't support natively? Config Management Plugins let you plug in anything. Learn the sidecar architecture, discovery rules, and how to debug when things go wrong.
Kargo's built-in steps handle the basics, but real pipelines need conditionals, retries, and shared tasks. Learn how to combine the step library, expression language, and PromotionTasks into production-ready workflows.
Sharing one Argo CD instance across teams without proper isolation is asking for trouble. Learn how to scope access with AppProjects, Casbin policies, and OIDC role bindings.
Want to use an upstream Helm chart but keep your values in a separate Git repo? Multi-source Applications solve this cleanly, from ref fields and manifest layering to scaling across environments with ApplicationSets.
Need database migrations to run before your app deploys? Sync waves and hooks give you precise ordering control, from PreSync jobs and wave numbering to PostSync smoke tests and SyncFail cleanup.
Kargo v1.9 adds a REST API, JWT tokens for automation, and Warehouse caching that cuts artifact discovery time significantly. Here's what shipped and how to take advantage of it.
Kargo polls your registries by default, but webhooks are faster and lighter. Set up push-based triggers from GitHub, GitLab, or Docker Hub to kick off promotions instantly.
No more restarts just to change CPU or memory limits. In-Place Pod Resize is now GA in Kubernetes v1.35. Here's how it works, including resize policies, VPA integration, and real-world patterns.
Promoting without verification is a production incident waiting to happen. Learn how to add AnalysisTemplates, soak time gates, and reusable PromotionTasks to your Kargo pipelines.