launchdarkly / ld-relay-helm

A helm chart to ease deployment of the LaunchDarkly Relay Proxy
Other
6 stars 12 forks source link

Feature: Add support for TopologySpreadConstraint and PodDistruptionBudget #47

Closed pjaak closed 1 year ago

pjaak commented 1 year ago

Requirements

Related issues https://github.com/launchdarkly/ld-relay-helm/issues/42 https://github.com/launchdarkly/ld-relay-helm/issues/43

Describe the solution you've provided

Added an option to enable a PodDistruptionBudget for the relay deployment. In the values file you can specify a maxUnavailable or a minAvailable, but can't specify both. If both are specified the maxUnavailable takes precedence. If you enabled the PDB but don't specify any max or min values then minAvailable will be set with a value of 0. Tests have been added to cover these cases

Adds an option to specify multiple TopologySpreadConstraints in the values file which will be used by the relay deployment. If you don't specify LabelSelector in the values it will use the default selectorLabels from the template which is recommended.

Additional context

I had to update some of the go packages and dependencies to support the policy/v1 for the PDB. Can confirm all tests pass successfully. Also had to update some of the tests in the deployment.

LiamStorkey commented 1 year ago

Great idea! - LGMT

louis-launchdarkly commented 1 year ago

Hello @pjaak, thank you for the contribution. When the engineer is available, we will review this and make progress on this.

pjaak commented 1 year ago

Thank you for your contribution! Overall this looks good to me. I had a couple of tweaks and questions I'd like us to discuss, so let me know your thoughts. Thanks again!!

Thanks for the feedback @keelerm84, all makes sense to me. Let me implement the changes and push them up.

pjaak commented 1 year ago

I have pushed some latest changes and left some comments.

Thanks! :D

keelerm84 commented 1 year ago

Released in 2.4.0