I'm currently using Ansible to template out Helm values files and deploy Helm charts to Kubernetes. However, this happens in sequence and generally takes a long time to deploy because of the number of Helm charts needed to deploy. I'm looking for a way to deploy Helm charts in parallel.
A few of my Helm charts depend on each other, but many of the charts could be deployed in parallel. There are also instances where I want to conditionally decide to deploy a Helm chart before another chart. For example, sometimes (but not always) I want to run a database migration Helm chart to completion before running an application helm chart. Also, sometimes, I want to deploy the entire suite of Helm charts all at once and sometimes I just want to deploy a particular chart or subset of charts without impacting other deployed charts.
I was wondering if there are any projects or tooling around deploying Helm charts in parallel, while setting dependencies and conditionals.
I've encountered the Helmfile project, which looks interesting. However, it's not clear to me if this project supports parallel execution and dependent execution.
Has anyone encountered a similar need and found a tool that works for conditionally deploying Helm charts in parallel? Or has anyone leveraged Helmfile to achieve this?