Defining Releases in helmfile.yaml
Listing charts, namespaces, and values per release.
Defining Releases in helmfile.yaml is a free Helm Academy lesson on CoddyKit — lesson 2 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the Helm Academy learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.
The releases List
The heart of a helmfile.yaml is the releases list. Each item describes one Helm release you want running in the cluster.
releases:
- name: web
namespace: frontend
chart: ./charts/webname and chart
Every release needs a name and a chart. The name is the Helm release name; the chart points to a local path or a repo chart.
- name: api
chart: ./charts/apiPick a Namespace
The namespace field sets where the release installs. Helmfile keeps each release neatly placed without you typing -n every time.
- name: redis
namespace: cache
chart: bitnami/redisReference a Repo Chart
To use a published chart, declare its repository at the top, then point the release chart at repoName/chartName.
repositories:
- name: bitnami
url: https://charts.bitnami.com/bitnami
releases:
- name: pg
chart: bitnami/postgresqlPin the Chart version
Add a version to lock the chart version for that release. Pinning keeps deploys reproducible instead of grabbing whatever is newest.
- name: pg
chart: bitnami/postgresql
version: "15.5.0"Inline Values
The values key sets chart configuration. You can write overrides inline as a small map right inside the release entry.
- name: web
chart: ./charts/web
values:
- replicaCount: 3Values From a File
For bigger configs, point values at a YAML file path. This keeps your overrides versioned in their own file, just like with helm -f.
- name: web
chart: ./charts/web
values:
- ./values/web.yamlMix Files and Inline
The values list can mix file paths and inline maps. Later entries override earlier ones, so put the most specific values last.
values:
- ./values/base.yaml
- replicaCount: 5Quick Single Overrides
For one-off tweaks, the set key works like helm --set. It is handy for a single scalar without writing a whole file.
- name: web
chart: ./charts/web
set:
- name: image.tag
value: "1.4.2"Toggle a Release
The installed flag turns a release on or off. Set it to false and Helmfile uninstalls that release on the next sync.
- name: debug-tools
chart: ./charts/debug
installed: falseMany Releases, One File
List as many releases as you need under releases. Helmfile manages every one of them together as a single coherent stack.
Quick Check
You added a release entry but want it gone from the cluster on the next run. Which field do you use?
Recap: Defining Releases
You learned a release needs name and chart, plus optional namespace, version, values, set, and installed. Next: per-environment values. 🧩
Frequently asked questions
Is the “Defining Releases in helmfile.yaml” lesson free?
Yes — the full text of “Defining Releases in helmfile.yaml” is free to read here on the web, and the Helm Academy course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the Helm Academy course, upgrade to CoddyKit PRO.
What will I learn in “Defining Releases in helmfile.yaml”?
Listing charts, namespaces, and values per release. You practise Helm Academy with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.
Do I need any experience to start Helm Academy?
No prior experience is required. Helm Academy on CoddyKit is structured for beginners through advanced learners; this is — lesson 2 of 4, so you can start here or from the beginning and move at your own pace.
How long does the “Defining Releases in helmfile.yaml” lesson take?
Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.
Can I write and run code in this Helm Academy lesson?
Yes. Every Helm Academy lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.
All lessons in this course
- Why Helmfile Sits Above Helm
- Defining Releases in helmfile.yaml
- Environments and Per-Env Values
- helmfile diff, apply, and sync