v0.1.8
Released 2026-11-02, rolled out from 2026-10-29. Full notes: v0.1.8-RELEASE-NOTES.md.
Highlights
Section titled “Highlights”- Config in one place.
config/config.yml(domain, subnet, VIP, nodes, LB pool, manifests branch) andconfig/versions.yaml(every chart, image and Talos pin), read by Pulumi, CDK8s and the justfile. Shared helpers inworkloads/kit. - Security. No OpenBao root token on disk (
just openbao-tokenover an in-pod socket). Grafana split into an admin org and a metrics-only Public org. VPS key-only SSH with fail2ban. CI actions pinned to SHAs, SBOM per release, gitleaks + trufflehog hooks (just hooks). - Platform. Talos 1.14 with Kubernetes held on 1.36, Gateway API CRDs v1.6.3, Cilium 1.18 → 1.19 → 1.20, Argo CD chart 10.10.5. Node IPs removed from the LB pool.
- Workloads. Longhorn 1.13, n8n 2.x (one-way DB migration), Kubeflow 26.03, Falco 9, Grafana chart 14, and every other chart to latest stable.
- New. LAN-only Counter-Strike 2 server on
192.168.1.230, and Open WebUI atchat.madhan.app— a LAN-only chat front end for Ollama. - Docs. Moved from Zola to Astro Starlight, with interactive architecture diagrams.
- Pre-release security patches. Harbor, Kyverno, OpenBao, n8n, Grafana, the
n8n-pgoperand and Talos patch bumps; Longhorn engines now auto-upgrade.
Manual steps
Section titled “Manual steps”Pass each step’s gate before the next. Kubernetes ends on 1.36.6. Runbooks: Upgrades.
- Back up.
pg_dumpthe n8n database off-cluster, snapshot Longhorn volumes that cannot be re-downloaded, confirm the OpenBao unseal key is in SOPS, record a hash ofN8N_ENCRYPTION_KEY, and check your SSH key logs in to the VPS. No Service may useexternalIPs: admission now denies them. - Talos 1.14, one node at a time,
talosctl1.14.1+. Passdrain=falseon the GPU worker and on whichever worker hostsn8n-pg-1. See Talos. - Kubernetes, then Pulumi:
just talos-upgrade-k8s,just core talos preview(stop on any replace),just core talos up. - Gateway API CRDs, then Cilium 1.19.10, then 1.20.4 as three applies with the four gates between each. See Cilium.
- Argo CD and cert-manager:
just core platform upon unmodified HEAD. - Grafana org:
just grafana-initbefore the Grafana change syncs. Then setargocd_manual_sync: trueand apply. - Repoint Argo CD to
v0.1.8-manifests,just argocd-sync openbao, deleteopenbao-0(OnDelete), thenjust openbao-setup. Sync Falco now. - Workloads by risk with
just argocd-sync <app>: low → storage (CNPG, then Longhorn) → observability → Ollama → Kubeflow (deletejobset-controller-managerandprofiles-deployment) → n8n → CS2. - Verify Falco, then set
argocd_manual_sync: falseand apply. - Bifrost:
just core hetzner preview(no server replace), thenup. - Pulumi providers (cloudflare v6, proxmoxve v8): preview every stack and stop on any VM or DNS record replace.
Deferred: Kubernetes 1.37, SSO in front of every UI, default-deny NetworkPolicies, Kyverno enforce mode, image digest pins, NetBird 0.81.x.