⎈ Helm for Developers
Tutorial Prerequisites Decks ↗ GitHub ↗
Home / Data and lifecycle
Part 2 4 chapters

Data and lifecycle

A Postgres subchart on CloudNativePG, CRDs and operators, migration hooks, and the Helm 4 release lifecycle.

Chapter 9

Dependencies and a Postgres subchart

Add a shipping-postgres subchart that renders a CloudNativePG Cluster, switch it with a condition, and wire the service to it with import-values.

35 minutesRead →
Chapter 10

CRDs and operators

What the crds/ directory does and does not do, why an application chart ships custom resources and not operators, and how to fail fast when an operator is missing.

30 minutesRead →
Chapter 11

Hooks and database migrations

Run the schema migration as a Helm hook Job, choose between pre-install and post-install, and avoid the deadlock between hooks and --wait.

40 minutesRead →
Chapter 12

The release lifecycle

Drive one release through good upgrades, failed upgrades and rollbacks with --wait, --rollback-on-failure and --cleanup-on-fail, and see what Helm 4 stores and how server-side apply changes conflicts.

45 minutesRead →
← Previous part From manifests to a chart Next part → Debugging and testing

Helm for Developers

A chaptered, hands-on tutorial for Helm 4: one Python 3.14 (3.15-ready) FastAPI shipping application taken from raw manifests to a signed, GitOps-delivered chart on minikube and OpenShift.

Tutorial

  • Outline
  • Prerequisites
  • Helm 4 tour
  • Roadmap

Reference

  • Helm docs ↗
  • Helm HIPs ↗
  • View on GitHub ↗
  • Issues ↗
Open source · Apache 2.0 Last built 2026-10-08