helm-kubernetes-services icon indicating copy to clipboard operation
helm-kubernetes-services copied to clipboard

Add support for Statefulset deployments

Open rvc-mf opened this issue 2 years ago • 0 comments

I would like to add support for Statefulset deployments to this helm chart. I believe this can be done with relatively few (and non-breaking?) changes:

  • Add an optional field called workloadType to values.yaml, where the default value is deployment but statefulset is also an option.
  • Add a _statefulset_spec.tpl template which gets used when workloadType is set to statefulset. In turn, _deployment_spec_tpl only gets used when workloadType is set to deployment.
  • Add an optional updateStrategy field to values.yaml which gets injected into updateStrategy on statefulset workloads (workloadType: statefulset). deploymentStrategy continues getting injected into strategy on deployment workloads.
  • Add an optional name field under service due to Statefulset workload requirements. service could still have enabled: false if the service resource is created outside of the chart.

I consider these changes possibly non-breaking because as long as the default value of workloadType is deployment, the chart should behave exactly as it does currently. Also, I don't expect any downtime implications from these changes.

An alternative would be creating different helm charts for statefulset deployments, but I think time will be better spent upgrading this Chart instead.

That being said, is there anything that I'm not seeing that could become a problem with this approach? I'm planning on coding this up soon, but I'd appreciate any feedback 👍🏼.

rvc-mf avatar May 18 '22 16:05 rvc-mf