-[
-{{- $ctx := . }}
-{{- $components := tuple "dcae-hv-ves-collector" "dcae-prh" "dcae-tcagen2" "dcae-ves-collector" }}
-{{- range $i, $v := $components }}
-{{- if index $ctx.Values . "enabled" }}
-{{- if $i }},{{ end }}
-{{ $v | quote | indent 2 }}
+
+{{/*
+
+ This template generates a JSON file with an array containing the names of the
+ components that the healthcheck container always expects to see--that is, the
+ components that are enabled in the top-level values.yaml file.
+
+ The code loops through the list of components ($components) and checks each component's
+ entry in the values.yaml file is set to "enabled". It adds the name of each enabled
+ component to the list.
+
+ There is a bit of Helm trickery here--the code uses a dict ($enabled), because that's
+ apparently the only way to create a variable outside of a range loop that can be updated
+ from within the range loop. The code here generates a list of the components that are
+ enabled in values.yaml, and stores it into the list called "enabled" in the dictionary
+ $enabled.
+
+ Note also the assignment to an otherwise unused variable ($x) in the loop. Without that
+ assignment, the updated value of the $enabled.enabled list would be rendered into the
+ file each time an enabled component is found.
+
+*/}}
+
+{{- $ctx := . -}}
+{{- $components := list "dcae-hv-ves-collector" "dcae-prh" "dcae-tcagen2" "dcae-ves-collector" "dcae-ves-openapi-manager" -}}
+{{- $enabled := dict "enabled" list -}}
+{{- range $components -}}
+ {{- if index $ctx.Values . "enabled" -}}
+ {{- $x:= . | append $enabled.enabled | set $enabled "enabled" -}}
+ {{- end -}}