# Error: UPGRADE FAILED: values don't meet the specifications of the following chart templates: template "deployment.yaml" is missing required values

- **ID:** `kubernetes/helm-upgrade-failed-missing-values`
- **Domain:** kubernetes
- **Category:** config_error
- **Verification:** ai_generated
- **Fix Rate:** 87%

## Root Cause

Helm upgrade fails because the provided values.yaml is missing required keys that the chart template expects, often due to a new chart version with additional required fields.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| Helm v3.14.0 | active | — | — |
| Helm v3.13.3 | active | — | — |
| Kubernetes v1.28.4 | active | — | — |

## Workarounds

1. **Inspect the chart for required values: `helm show values <chart-name>` and compare with your values.yaml. Add missing keys, e.g., if the chart requires `service.port`, add `service: {port: 8080}` to your values file.** (90% success)
   ```
   Inspect the chart for required values: `helm show values <chart-name>` and compare with your values.yaml. Add missing keys, e.g., if the chart requires `service.port`, add `service: {port: 8080}` to your values file.
   ```
2. **Use `helm upgrade --install --dry-run --debug` to see the template rendering errors and identify exactly which values are missing.** (85% success)
   ```
   Use `helm upgrade --install --dry-run --debug` to see the template rendering errors and identify exactly which values are missing.
   ```

## Dead Ends

- **Run `helm upgrade --reuse-values` to reuse old values** — Reusing old values doesn't supply the missing required keys from the new chart version. It will still fail with the same error. (95% fail)
- **Delete the release and reinstall with `helm install`** — Deleting the release may cause data loss (e.g., PVCs may be orphaned). Also, the install will fail for the same reason if values are missing. (80% fail)
