Bird
0
0

Which Helm template snippet correctly iterates over envVars to create environment variable entries?

hard📝 Workflow Q9 of 15
Kubernetes - Helm Package Manager
You want to allow users to specify a list of environment variables in values.yaml under envVars and render them in a Deployment template. Which Helm template snippet correctly iterates over envVars to create environment variable entries?
A{{- range $key, $val := .Values.envVars }} - name: {{ $key }} value: {{ $val }} {{- end }}
B{{- range .Values.envVars }} - name: {{ .name }} value: {{ .value }} {{- end }}
C{{- with .Values.envVars }} - name: {{ .name }} value: {{ .value }} {{- end }}
D{{- for .Values.envVars }} - name: {{ .name }} value: {{ .value }} {{- end }}
Step-by-Step Solution
Solution:
  1. Step 1: Understand Helm range syntax for lists

    Use range to iterate over list items, each item accessed as ..
  2. Step 2: Evaluate options

    {{- range .Values.envVars }} - name: {{ .name }} value: {{ .value }} {{- end }} correctly ranges over list and accesses .name and .value. {{- range $key, $val := .Values.envVars }} - name: {{ $key }} value: {{ $val }} {{- end }} assumes map, not list. {{- with .Values.envVars }} - name: {{ .name }} value: {{ .value }} {{- end }} uses with which does not iterate. {{- for .Values.envVars }} - name: {{ .name }} value: {{ .value }} {{- end }} uses invalid for.
  3. Final Answer:

    {{- range .Values.envVars }} -> Option B
  4. Quick Check:

    Use range to loop lists in Helm templates [OK]
Quick Trick: Use range to loop lists, with dot for current item [OK]
Common Mistakes:
  • Using for instead of range
  • Confusing list with map iteration
  • Using with instead of range for lists

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More Kubernetes Quizzes