Guides
Deploying Helm Charts
Helm charts as a manifest source — schema reserved, renderer planned
Deploying Helm Charts — 📋 planned
Helm isn't implemented. manifestType: Helm (or Auto detecting a Chart.yaml) fails the reconcile today, and the HelmChart source type has no resolver. The App schema already reserves both paths — this guide documents the target shape so specs written now will work when the renderer lands.
Two Helm paths are reserved in the CRD:
| Path | Field | Purpose |
|---|---|---|
| Git-resident chart | source.git.manifestType: Helm + source.git.helm | Render a chart checked into the tracked repo path |
| Chart-repo deploy | source.type: HelmChart + source.helmChart | Deploy a chart from an HTTP/OCI chart repo — no git hop |
Target shape — chart in git
apiVersion: cd.wardn.space/v1alpha1
kind: App
metadata:
name: web-production
namespace: org-my-org
spec:
source:
type: Git
git:
repoURL: https://github.com/myorg/my-app
branch: main
path: charts/web
manifestType: Helm
helm:
valuesFile: values/production.yaml # relative to path
releaseName: web
namespace: production
inlineValues: |
replicaCount: 3
image:
tag: "1.26-alpine"
destination:
namespace: production
syncPolicy:
automated: true
prune: trueThe helm config block exists in the schema:
| Field | Description |
|---|---|
valuesFile | Values file path relative to path |
releaseName | Release name (defaults to app name) |
namespace | Release namespace |
inlineValues | Raw YAML values applied on top of valuesFile |
Target shape — chart repository
spec:
source:
type: HelmChart
helmChart:
repoURL: https://charts.bitnami.com/bitnami # or oci://…
chart: nginx
version: "18.x"
values: |
replicaCount: 3repoURL, chart, version, values are defined; resolution is not.
Intended values precedence
Highest wins: inlineValues → valuesFile → chart values.yaml defaults.
Workarounds today
- Render it yourself — commit the
helm templateoutput as raw YAML and usemanifestType: Raw - Kustomize over rendered output —
manifestType: Kustomize✅ works now and can patch the rendered base
Related
- Manifest Management — Raw + Kustomize rendering that works today
- Configuration —
source.git.helm+source.helmChartfield reference - Kustomize Guide — working alternative
- Roadmap — where Helm lands