पाठ 25 / 25
Helm Revision and Interview Questions
Recall Helm concepts, commands and pitfalls under exam or interview pressure.
Cheat sheet
Concepts: chart (package), release (installed instance), revision (each change), repository (HTTP index or OCI registry), values (configuration). Helm 3+ has no Tiller; release state is stored as Secrets in the release namespace. Commands: repo add/update, search repo/hub, show values, install, upgrade --install --wait, history, rollback, uninstall, list -A, get values/manifest, template, lint, package, push, dependency update/build, test. Values precedence: chart values → parent values → -f files in order → --set; lists replace, maps merge. Templating: .Values, .Release, .Chart, .Capabilities; {{- -}} whitespace; with/range change the dot, $ is root; include + nindent; required, default, quote, toYaml. Pitfalls: immutable selectors, unpinned versions, secrets in values, --reuse-values, CRDs not upgraded, deleting release Secrets.
Common interview questions
Answer each in two or three sentences with an example.
1. What is the difference between a chart, a release and a revision?
2. What changed between Helm 2 and Helm 3 (Tiller, release storage)?
3. Explain chart version vs appVersion.
4. How does Helm decide which value wins when values are set in several places?
5. Why use include instead of template, and what does nindent do?
6. How would you run a database migration during an upgrade?
7. What happens to CRDs in crds/ on upgrade, and why?
8. How do you keep secrets out of values files?
9. Helm vs Kustomize: when would you choose each?
10. A release is stuck in pending-upgrade. What do you do?Show you have operated it
Interviewers value war stories: a selector change that broke an upgrade, a missing --wait, a CRD that would not update. Describe the symptom, the cause and what you changed in the chart or pipeline.
त्वरित जाँच: In Helm, what does `helm upgrade --install` do when the release does not exist yet?
- Fails with release not found
- Creates only the namespace
- Runs helm template and exits
- Installs it, so the same command works for first and later deployments
Answer
Installs it, so the same command works for first and later deployments — --install makes upgrade install the release when it is missing, which suits idempotent pipelines.