- best-practices/: 11 topic files + INDEX.md extracted from cluster-bootstrap and custom-claude-skills (validation, k8s, helm, ansible, secrets, debugging, etc.) - settings.yaml: pipeline config (log retention, tracked projects, max logs per run) - CLAUDE.md: updated with best-practices loading and pipeline documentation - memory/log/: first session log demonstrating the format Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
26 lines
1.2 KiB
Markdown
26 lines
1.2 KiB
Markdown
# Helm Charts
|
|
|
|
## Schema Validation
|
|
|
|
- **Always validate values against the chart schema before committing.** Run `helm show values <repo>/<chart> --version <ver>` 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
|