roboll / helmfile

Deploy Kubernetes Helm Charts
MIT License
4.04k stars 566 forks source link

Example featuring kapitan + helmfile #140

Open mumoshu opened 6 years ago

mumoshu commented 6 years ago

This was on my TODO list for a while.

kapitan provides you a solid foundation of managing your entire environments in a monorepo with:

I'm considering to use kapitan to render helmfile.yaml, so that, for example, you can leverage everything jsonnet provides to reduce duplications in the helmfile.yaml. You can also leverage kapitan's encryption feature to encrypt settings consumed by helmfile.yaml itself.

I also have a vague idea that helmfile integrates transparently with kapitan. Not sure how but would be nice to have.

mumoshu commented 6 years ago

With this combination, you basically use kapitan to define helmfile, while helmfile defines helm releases and helm release defines k8s resources.

sstarcher commented 6 years ago

Kaptain mainly seems to be trying to fill in the same space as Helm. I'm not sure why we would want that kind of template complexity.

mumoshu commented 6 years ago

@sstarcher Thx for the comment!

I just want to investigate both possibilities - growing helmfile itself to be able to cover most use-cases, and allowing integrations w/ more other tools to complement helmfile.

Kapitan does great jobs regarding:

Also, I'm looking forward to use some dependency manager like jsonnet-bundler to distribute reusable parts of your helmfile.

mumoshu commented 6 years ago

After talking with @AssafKatz3 at https://github.com/roboll/helmfile/issues/96#issuecomment-392306655, I'm now wondering if we eventually ends up with implementing something like kapitan ourselves, or just use kapitan in combination with helmfile in the future :)