Set value in dependency of Helm chart

Harold L. Brown picture Harold L. Brown · Apr 18, 2019 · Viewed 7.1k times · Source

I want to use the postgresql chart as a requirements for my Helm chart.

My requirements.yaml file hence looks like this:

dependencies:
  - name: "postgresql"
    version: "3.10.0"
    repository: "@stable"

In the postgreSQL Helm chart I now want to set the username with the property postgresqlUsername (see https://github.com/helm/charts/tree/master/stable/postgresql for all properties).

Where do I have to specify this property in my project so that it gets propagated to the postgreSQL dependency?

Answer

jhanschoo picture jhanschoo · Oct 1, 2019

As described in https://v2.helm.sh/docs/chart_template_guide/#subcharts-and-global-values, in your parent (i.e. not the dependency) chart's values.yaml file, have a section that contains

postgresql:
  postgresUsername: ....
  postgresPassword: ....
  ...

That is, all values under the postgresql key will override the child (postgresql) chart's values.yaml values. Note that if you have aliased the postgresql dependency chart to another name in your requirements.yaml, you should use that other name instead of postgresql.

edit: The corresponding article in v3 is here https://helm.sh/docs/chart_template_guide/subcharts_and_globals/