title: How to manage Kubernetes Helm Chart Configurations?
body: <p>I want to set up a Kubernetes Cluster with multiple Helm Charts installed. I like the idea of having configurations versioned in an Git repository. I'm wondering if there is any tool (or recommended/best practice) of how the state of installed helm charts can be "versioned".</p>
  
  <p>For example, I would like to have a yaml file similar to the following example with multiple helm charts and a tool (that's the tool I'm searching for) which will take care of applying this file to my Kubernetes cluster:</p>
  
  <pre><code>- name: gitlab
    chart: gitlab/gitlab-runner
    repository: https://charts.gitlab.io
    values:
      - gitlab-runner/values.yaml
      - local/gitlab-runner-override.yaml
    namespace: gitlab-runner
  
  - name: metallb
    chart: stable/metallb
    values:
      - metallb/configuration.yaml
  
  ...
  </code></pre>
  
  <p>This way it is possible to manage the contents of the Kubernetes cluster in a programatically way.</p>
  
  <p>Any recommendations?</p>