I have the following helmfile
releases:
  - name: whoami-mn
    namespace: whoami-mn-{{ .Environment.Name }}
    chart: tons/whoami-mn
    version: {{ .Values.chartVersions.whoami }}
    installed: {{ .Values.installed }}
    values:
      - env/{{ .Environment.Name }}-values.yaml
environments:
  dev:
    values:
      - installed: true
      - chartVersions:
          whoami: 0.3.0
          otherApp: 0.2.0
  prod:
    values:
      - installed: true
      - chartVersions:
          whoami: 0.2.0
          otherApp: 0.1.0
But when running helmfile -e dev template I get the following error
in ./helmfile.yaml: error during helmfile.yaml.part.0 parsing: template: stringTemplate:5:23: executing "stringTemplate" at <.Values.chartVersions.whoami>: map has no entry for key "chartVersions"
I can do something like the following
environments:
  dev:
    values:
      - installed: true
      - chartVersionWhoami: 0.3.0
That works but I'd prefer having all chart version grouped under a parent key. Any suggestions about how to get the former working?
UPDATE: The following works
...
version: {{ (index .Values "chartVersions").whoamiMn }}
...
With the environment defined like the following
environments:
  dev:
    values:
      - installed: true
      - chartVersions:
          whoamiMn: 0.3.0
But I really feel like my first attempt should work as well!
                        
After experimenting and discussing further here. I figured out that I can fix this issue by simply listing my
environmentsbefore myreleases. In my pedantic point of view I'd appreciate having myreleaseslisted first but it works.