# Helm Charts ## Schema Validation - **Always validate values against the chart schema before committing.** Run `helm show values / --version ` to check the actual structure. - Helm chart schemas change between versions — field names and nesting can differ from documentation or online examples. - A quick `helm template` test locally catches schema errors before deployment. - `additionalProperties: false` in chart schemas means any extra keys at the wrong nesting level cause a hard failure. ## Version Verification - Run `helm search repo` or check upstream docs to confirm latest stable versions - Don't rely on memory for chart versions — they go stale quickly - Check compatibility matrices between chart version, app version, and other cluster components ## Multi-Source Applications - ArgoCD multi-source Applications use `$ref` syntax to combine external Helm charts with Git-stored values files - Keep values files in Git alongside the ArgoCD Application manifest ## Timeout Handling - Under cluster pressure (many events, etcd busy), default Helm timeouts may not be enough - Increase timeout for initial installs (e.g., 10m instead of 5m) - `helm upgrade --install` is idempotent — retries are safe