Search code examples
kuberneteskubernetes-helm

how to apply custom-values.yaml on two subchart which is part for main chart


Chart.yaml:-

dependencies:
     - name: prometheus-operator
       version: 8.16.1
       repository: https://kubernetes-charts.storage.googleapis.com/
     - name: fluentd-elasticsearch
       version: 9.4.2
       repository: https://kiwigrid.github.io

Custom-values.yaml

# Change default node-exporter port
prometheus-node-exporter:
  service:
    port: 30206
    targetPort: 30206
prometheus:
  prometheusSpec:
    storageSpec:
       volumeClaimTemplate:
         spec:
           storageClassName: efs
           accessModes: ["ReadWriteOnce"]
           resources:
             requests:
               storage: 5Gi
         selector: {}
elasticsearch:
  hosts: ["https://vpc-logs-abcd:443"]

Running command:-

helm install --namespace dependency test -f /root/custom-values.yaml  /root/customchart

Error/Problem:- Custom-values.yaml is NOT applied on the chart !! Chart Installed with "Default values"


Solution

  • As described here to pass value in subchart you need to define value under dependent chart name section like following

    prometheus-operator:
    # Change default node-exporter port
      prometheus-node-exporter:
        service:
          port: 30206
          targetPort: 30206
      prometheus:
        prometheusSpec:
          storageSpec:
             volumeClaimTemplate:
               spec:
                 storageClassName: efs
                 accessModes: ["ReadWriteOnce"]
                 resources:
                   requests:
                     storage: 5Gi
               selector: {}
    
    fluentd-elasticsearch:
      elasticsearch:
        hosts: ["https://vpc-logs-abcd:443"]