Helm "execution error ... required" - Fix Missing Required Values in CI
A chart uses the required template function to enforce a mandatory value, and that value was not provided. Helm stops rendering and prints the chart author’s message - by design, to prevent deploying without a required input.
What this error means
helm install/upgrade/template fails with Error: execution error at (<chart>/templates/...): <required message>. The render aborts on a deliberately enforced value, not a syntax bug.
Error: execution error at (mychart/templates/secret.yaml:7:14):
image.tag is requiredCommon causes
Mandatory value not set
A {{ required "X is required" .Values.x }} guard fires because the value was omitted from values.yaml, the -f file, or --set in this CI run.
Value set at the wrong path
The value was supplied but under a different key than the template reads (a nesting/typo mismatch), so the required check still sees it as unset.
How to fix it
Supply the required value
Pass it via a values file or --set, matching the exact path the template reads.
helm upgrade --install <release> ./chart -n <ns> \
-f values.ci.yaml --set image.tag="$IMAGE_TAG"Confirm the value lands where the chart expects
- Read the error’s template path to see which value is required.
- Render with
helm template ./chart -f values.ci.yaml --debugto confirm the value is set. - Fix any key mismatch between your values and the chart’s
.Valuespath.
How to prevent it
- Provide all required values via a checked-in CI values file.
- Render with
helm template --debugin CI to catch missing values early. - Document a chart’s required values so pipelines set them reliably.