<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Gitops - Tag - vo.rs</title><link>https://vo.rs/tags/gitops/</link><description>Gitops - Tag - vo.rs</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.</copyright><lastBuildDate>Mon, 11 Aug 2025 09:00:00 +0000</lastBuildDate><atom:link href="https://vo.rs/tags/gitops/" rel="self" type="application/rss+xml"/><item><title>ArgoCD: GitOps with a Dashboard You Might Actually Use</title><link>https://vo.rs/story/argocd-gitops-with-a-dashboard-you-might-actually-use/</link><description>&lt;p&gt;I came to GitOps grudgingly. The pitch — &amp;ldquo;Git is the single source of truth, the cluster reconciles itself to match&amp;rdquo; — sounded like the kind of slogan that survives precisely one production incident. Then I tried to debug a drifting Kubernetes cluster the old way, &lt;code&gt;kubectl apply&lt;/code&gt;-ing manifests by hand and trying to remember which of three engineers had hotfixed what, and I came round. ArgoCD is the tool that converted me, mostly because of one thing the others don&amp;rsquo;t do nearly as well: it &lt;em&gt;shows&lt;/em&gt; you the state of the world.&lt;/p&gt;</description><pubDate>Mon, 11 Aug 2025 09:00:00 +0000</pubDate></item><item><title>Kubernetes Secrets Management: SOPS, Sealed Secrets, or External Secrets</title><link>https://vo.rs/story/kubernetes-secrets-management-sops-sealed-secrets-or-external-secrets/</link><description>&lt;p&gt;Kubernetes Secrets are not secret. That&amp;rsquo;s the first thing nobody tells you. A &lt;code&gt;Secret&lt;/code&gt; object is base64-encoded YAML sitting in etcd, and base64 is encoding, not encryption — anyone with &lt;code&gt;get secrets&lt;/code&gt; on the namespace can read it back in plaintext with a single command. Encryption at rest in etcd helps a little, but the real problem turns up the moment you adopt GitOps: now you want everything in a repo, and committing a base64 blob of your database password to Git is the kind of decision that ends careers. So you reach for tooling. There are three serious contenders, and I&amp;rsquo;ve run all of them in anger.&lt;/p&gt;</description><pubDate>Thu, 19 Dec 2024 10:00:00 +0000</pubDate></item><item><title>GitOps with Flux: Letting Git Be Your Cluster's Source of Truth</title><link>https://vo.rs/story/gitops-with-flux-letting-git-be-your-clusters-source-of-truth/</link><description>&lt;p&gt;There&amp;rsquo;s a particular kind of dread that comes from not knowing what&amp;rsquo;s actually running in your cluster. You applied a manifest weeks ago, then patched something live to fix an outage, then someone else tweaked a config map, and now the YAML in your repo and the reality in the cluster have quietly diverged. Nobody can say with confidence what&amp;rsquo;s deployed, which means nobody can rebuild it from scratch. That drift is the enemy, and GitOps is the cure.&lt;/p&gt;</description><pubDate>Tue, 12 Mar 2024 09:00:00 +0000</pubDate></item></channel></rss>