To ease local development/testing, I have an umbrella chart that deploys all my sub-charts. Those applications make use of resources (e.g. MongoDB, Kafka, etc) and I want to make sure that if you are installing the umbrella chart to a cluster, it will also install those resources.
To do this, I have the following:
apiVersion: v2
name: my-cool-project
type: application
version: 0.1.0
appVersion: 0.1.0
dependencies:
- name: my-cool-app-1
repository: "file://my-cool-app-1"
- name: my-cool-app-2
repository: "file://my-cool-app-2"
- name: bitnami/kafka
version: 2.5.0
repository: "https://charts.bitnami.com/bitnami"
Unfortunately, installing this chart throws the following error:
Error: found in Chart.yaml, but missing in charts/ directory: bitnami/kafka
This seems so fundamental to the concept of Helm that the fact it's not working means I'm clearly missing something basic. Even the official docs are pretty clear this is the right approach.
Most documentation/guides instruct you to simply helm install
it straight to the cluster. While this might solve my immediate problem of needing Kafka or MongoDB on the cluster, my desire is to code-ify the need for that resource so that I can achieve "single chart installs everything to an empty cluster and it just works" status.
What am I missing?