drone / charts

Helm charts for the Drone platform on Kubernetes
Other
168 stars 118 forks source link

drone Allow configuration of deployment replica count #33

Closed james-mcgoodwin closed 2 years ago

james-mcgoodwin commented 3 years ago

Drone server is a singleton, but it may be desirable to deploy the helm chart with a replica count of 0. A scenario here would be deploying a cold-standby copy of drone to a different cluster/region/namespace/etc

In our case, we intend to keep a cold-standby deployed but spun down, and the desire is to flip the replica count to 1 in the failover site and flip to 0 in the production site after the drone DB has been cloned to the failover region.

Since the service is a singleton, it's important to ensure this value can only ever be 1 or 0. Helm templating ensures the following:

Numbers greater than or equal to 1 will be set to 1 Numbers less than 1 will be set to 0

james-mcgoodwin commented 3 years ago

popping this commit message out since it changes a default value in values.yaml:

CI fails to pass because values.yaml contains an invalid null string. Running 'helm lint ./drone' fails Even calling helm lint with an additional '-f ./drone/ci/test-values.yaml' still fails to validate values.yaml

$  helm lint ./drone/ -f ./drone/ci/test-values.yaml
==> Linting ./drone/
[ERROR] values.yaml: - env.DRONE_SERVER_HOST: String length must be greater than or equal to 3

Error: 1 chart(s) linted, 1 chart(s) failed

I have updated values.yaml with the example string used in the drone documentation page for the DRONE_SERVER_HOST value: https://readme.drone.io/server/reference/drone-server-host/

jimsheldon commented 2 years ago

Sorry for the delay on this. I can see the value of potentially setting the replica count to zero. If you can resolve the conflicts, I will review. Thanks!

jimsheldon commented 2 years ago

Closing this for now, feel free to respond if you want to pick it up in the future.