<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Helm – apt-upgrade.me – Homelab, Linux &amp; DevSecOps</title><link>https://www.apt-upgrade.me/tag/helm/</link><description>One nerd's homelab: Linux, Kubernetes, security, and the occasional disaster.</description><language>en-US</language><lastBuildDate>Thu, 15 Oct 2026 17:58:14 +0200</lastBuildDate><atom:link href="https://www.apt-upgrade.me/tag/helm/index.xml" rel="self" type="application/rss+xml"/><item><title>The Ansible Tour, Part 2: The Platform – From a Bare AlmaLinux to a Kubernetes Cluster</title><link>https://www.apt-upgrade.me/2026/10/15/ansible-tour-part-2-platform/</link><pubDate>Thu, 15 Oct 2026 17:58:14 +0200</pubDate><guid>https://www.apt-upgrade.me/2026/10/15/ansible-tour-part-2-platform/</guid><description>&lt;p&gt;&lt;em&gt;Part 2 of the &lt;a href="https://www.apt-upgrade.me/2026/10/14/ansible-tour-part-1-framework/"&gt;Ansible Tour&lt;/a&gt;. Part 1 explained how the repository is built; this part starts at the very bottom. The series describes release &lt;a href="https://github.com/aptupgrademe/www_k3s/tree/v3.3.0"&gt;v3.3.0&lt;/a&gt;, with later changes added as updates.&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;Every server here starts as a plain AlmaLinux 9 cloud image: a minimal Linux, a root login, nothing else. At the end of this part it is a patched base system that sends mail, updates itself at night and rotates its logs – and runs a single-node Kubernetes cluster with Helm, automatic Let’s Encrypt certificates and an ingress controller. That is the platform the blog and Nextcloud stand on. Almost all of it is the same for both.&lt;/p&gt;</description></item><item><title>Ten Points, One Branch: Taking My Ansible Code From “It Works” to “It Is Clean”</title><link>https://www.apt-upgrade.me/2026/10/12/ten-points-one-branch-ansible-code-quality/</link><pubDate>Mon, 12 Oct 2026 21:42:52 +0200</pubDate><guid>https://www.apt-upgrade.me/2026/10/12/ten-points-one-branch-ansible-code-quality/</guid><description>&lt;p&gt;It started with a slightly vain question. My Ansible repository runs this blog and two Nextcloud servers: 34 roles, four playbooks, about 9,000 lines of YAML, almost 200 commits. I didn&amp;rsquo;t write most of those lines myself – my AI co-admin (Claude) did, while I decided, tested and ran the playbooks. So I asked it: &lt;em&gt;if I understand most of this code, am I an advanced Ansible user?&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;The answer was honest and a little uncomfortable: advanced at &lt;strong&gt;reading and operating&lt;/strong&gt; it, yes. Advanced at &lt;strong&gt;writing&lt;/strong&gt; it from scratch, not proven yet. And then it listed ten things that would make the code itself better. I said: do all ten. Test them properly. Then write about it. This is that post.&lt;/p&gt;</description></item><item><title>Homelab Rebuild 2026 — GitLab, a Seed VM, and the Calm Before the Kubernetes Storm</title><link>https://www.apt-upgrade.me/2026/07/23/homelab-rebuild-2026-gitlab-a-seed-vm-and-the-calm-before-the-kubernetes-storm/</link><pubDate>Thu, 23 Jul 2026 20:30:16 +0200</pubDate><guid>https://www.apt-upgrade.me/2026/07/23/homelab-rebuild-2026-gitlab-a-seed-vm-and-the-calm-before-the-kubernetes-storm/</guid><description>&lt;p&gt;😌 Fair warning: this installment is the calm before the storm. GitLab and the Seed VM turned out to be refreshingly easy — boring infrastructure, done boringly, on purpose. I&amp;rsquo;m mentioning that explicitly because the &lt;em&gt;next&lt;/em&gt; post is Kubernetes territory — FluxCD, GitOps reconciliation loops, and all the ways a cluster can look healthy right up until it very much isn&amp;rsquo;t — and that one was a considerably bigger fight. Consider this the deep breath before that dive. 🤿&#10;🦊 Every homelab reaches a point where &amp;ldquo;I&amp;rsquo;ll just SSH in and run the command by hand&amp;rdquo; stops being charming and starts being a liability. This post is about the moment this lab crossed that line: standing up GitLab as the single source of truth, and building a dedicated Seed VM so that &amp;ldquo;the tools to manage the infrastructure&amp;rdquo; stop living on whatever laptop I happen to be holding. 💻➡️🗄️&#10;Catch up on the earlier episode here: &lt;a href="https://www.apt-upgrade.me/2026/07/21/homelab-rebuild-2026-building-the-proxmox-cluster-and-provisioning-it-with-terraform/"&gt;Homelab Rebuild 2026: Building the Proxmox Cluster and Provisioning it with Terraform&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>WordPress on K3s — A Nerdy, Layered Update Strategy</title><link>https://www.apt-upgrade.me/2026/03/31/wordpress-on-k3s-a-nerdy-layered-update-strategy/</link><pubDate>Tue, 31 Mar 2026 13:26:24 +0200</pubDate><guid>https://www.apt-upgrade.me/2026/03/31/wordpress-on-k3s-a-nerdy-layered-update-strategy/</guid><description>&lt;p&gt;This article is a direct continuation of the previous guide. If you haven’t read it yet, start here: &lt;a href="https://www.apt-upgrade.me/2026/03/30/from-debian-to-almalinux-to-k3s-or-how-i-accidentally-built-a-mini-cloud-%f0%9f%9a%80/"&gt;Initial Setup: WordPress on K3s (Ansible-managed)&lt;/a&gt;.&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;p&gt;This guide describes a clean, deterministic update pipeline for a WordPress stack running on Kubernetes via &lt;strong&gt;K3s&lt;/strong&gt;, orchestrated with &lt;strong&gt;Ansible&lt;/strong&gt;. Think of it as a layered onion of updates — each layer independently maintainable, yet fully composable. &lt;em&gt;It also serves as a personal reference — a kind of living documentation — until these workflows become second nature to me 😉&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Installing Longhorn on a 3-Node Homelab Cluster</title><link>https://www.apt-upgrade.me/2026/03/13/installing-longhorn-on-a-3-node-homelab-cluster/</link><pubDate>Fri, 13 Mar 2026 20:03:38 +0100</pubDate><guid>https://www.apt-upgrade.me/2026/03/13/installing-longhorn-on-a-3-node-homelab-cluster/</guid><description>&lt;p&gt;If you’re running a small Kubernetes homelab and want &lt;strong&gt;persistent storage&lt;/strong&gt; with redundancy, &lt;strong&gt;Longhorn&lt;/strong&gt; is an excellent choice. 🚀&lt;/p&gt;&#10;&lt;p&gt;Longhorn is a lightweight, cloud-native distributed block storage system for Kubernetes. It allows you to create highly available volumes, replicate data across multiple nodes, and manage persistent volumes without relying on external storage appliances. For homelabs or edge clusters, it’s perfect because it runs entirely inside Kubernetes and is easy to manage through a web UI.&lt;/p&gt;</description></item></channel></rss>