Theory
Theory: Helm is a Function from Chart+Values to YAML
Argo renders Helm in the repo server. Helm hooks are not Argo hooks. Values can come from Git, multiple sources, or extras.
Invariants
- The rendered YAML is what is synced, not the chart tarball as a black box (unless you choose that).
- Versioning the chart and the values is two Git objects.
- Helm hook annotations can surprise Argo if mixed carelessly.
chart + values.yaml --helm template--> desired YAML --sync--> cluster
What can break
- Helm hooks that create Jobs Argo then prunes.
How to read this chapter
Helm vs plain, charts/repos, deploy/values, hook comparison.