I am trying to represent the following in the helmfile.yaml but I am getting an error. Can anyone help me to set it up?
values.yaml
extraVolumes:
 - name: google-cloud-key
   secret:
     secretName: gcloud-auth
I tried the following in helmfile.yaml
repositories:
  - name: loki 
    url: https://grafana.github.io/loki/charts
releases:
  - name: loki
    namespace: monitoring
    chart: loki/loki
    set: 
    - name: extraVolumes.name
      value: google-cloud-key
    - name: extraVolumes.secret.secretName
      value: gcloud-auth
The error I am getting is
coalesce.go:160: warning: skipped value for extraVolumes: Not a table.
I also tried with the following in helmfile.yaml
    - name: extraVolumes.name[]
      value: google-cloud-key
This gave me the following error
Error: failed parsing --set data: key map "extraVolumes" has no value
Any idea?
                        
Helmfile has two ways to provide values to the charts it installs. You're using
set:, which mimics the finickyhelm install --setoption. However, Helmfile also supportsvalues:, which generally maps tohelm install -f. Helmfilevalues:supports two extensions: if a filename in the list ends in*.gotmplthen the values file itself is processed as a template file before being given to Helm; or you can put inline YAML-syntax values directly inhelmfile.yaml.This last option is probably easiest. Instead of using
set:, usevalues:, and drop that block of YAML directly intohelmfile.yaml.values:is set to a list of either filenames or inline mappings. If you're not deeply familiar with YAML syntax, this means you need to put a-list-item indicator before the inline YAML block. If you already have a list ofvalues:files you can add this additional item into the list wherever appropriate.