☂️ Umbrella chart is evil¶
Helmwave is only what you actually need.
Why is Umbrella chart evil?
- You must keep extra chart.
 - You have new layer for conventional values.
 - Umbrella chart doesn't provide you environments separation.
 - When sub-chart is modified, you need to fix it twice.
 
Suppose that you need to describe the next architecture.
graph LR
  frontend --> api --> rabbitmq & minio_s3
  consumer --> rabbitmq & minio_s3 & postgresql
If you don't see a graph, please reload the page.
Example of helmwave.yml for this architecture.
helmwave.yml
project: "Example: umbrella"
version: "0.35.1"
repositories:
  - name: bitnami
    url: https://charts.bitnami.com/bitnami
.options: &options
  namespace: stage
  wait: true
  max_history: 5
releases:
  - name: frontend
    <<: *options
    chart: charts/frontend
    depends_on:
      - api
  - name: api
    <<: *options
    chart: charts/api
    depends_on:
      - rabbitmq
      - minio
  - name: consumer
    <<: *options
    chart: charts/consumer
    depends_on:
      - rabbitmq
      - minio
      - postgresql
  - name: rabbitmq
    <<: *options
    chart: bitnami/rabbitmq
  - name: minio
    <<: *options
    chart: bitnami/minio
  - name: postgresql
    <<: *options
    chart: bitnami/postgresql