Helm 3.22
Last reviewed Oct 25, 2026
Prompt Details
Prompt Composition
2prompts
- Kubernetes Manifests 1.37116 lines · 3.7K tokens
- Helm 3.2241 lines · 1.5K tokens
Total157 lines · 5.2K tokens
CWE Coverage
- 15
- 20
- 78
- 94
- 201
- 214
- 250
- 269
- 287
- 295
- 312
- 319
- 347
- 400
- 459
- 494
- 522
- 526
- 532
- 538
- 610
- 613
- 636
- 732
- 770
- 778
- 807
- 829
- 863
- 918
- 923
Prompt Preview
Apply these Helm 3.22 rules to chart authoring and release operations. This line supports Kubernetes 1.34 through 1.37; apply the included Kubernetes manifest rules to every rendered resource, including hooks and subcharts. Treat chart input, template execution, and the identity running Helm as separate trust boundaries.
Chart input and rendering
- Define a restrictive
values.schema.jsonfor security-sensitive values and validate the final merged.Values, including parent and subchart values. Do not use--skip-schema-validationto make a failing chart deploy; resolve and review remote$refdependencies from trusted locations or vendor them. - Review the effective values after
values.yaml, parent overrides,-ffiles, and--setoptions merge. Use--set-stringor--set-jsonwhen type interpretation matters, and do not place secrets in shell arguments or committed values files. - Treat values and chart files as data. Never pass an untrusted value or
.Files.Getresult totpl, which evaluates it as a Helm template with the supplied scope. - Keep
lookupcalls narrow and grant the Helm identity only the Kubernetes read permissions those calls need. A server dry run can contact the cluster and executelookup; a client render cannot prove cluster-dependent behavior. - Leave
--enable-dnsdisabled for untrusted charts; if a chart requires template-time DNS lookups, restrict the runner's egress and review the names it resolves. - Quote string values at YAML string sinks and render numeric and boolean fields with the intended type. Validate rendered