Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ENHANCE] Ability to pause rollout of deployments #837

Open
tom1299 opened this issue Feb 12, 2025 · 0 comments
Open

[ENHANCE] Ability to pause rollout of deployments #837

tom1299 opened this issue Feb 12, 2025 · 0 comments
Labels
kind/enhancement New feature or request

Comments

@tom1299
Copy link
Contributor

tom1299 commented Feb 12, 2025

Is your feature request related to a problem? Please describe.
We have deployments which have several configmaps and secrets which are often updated almost at the same time. This leads to a series of rollouts for each of the update which (because of lengthy init containers) take a long time to complete.

Describe the solution you'd like
I would like to add the ability to pause the rollout of a deployment for a specific period of time using an annotation. For example:

deployment.reloader.stakater.com/pause-interval: 30s

The behviour of that annotation could be described like this:

  • Update of configmap or secret for a deployment is processed
  • If the deployment contains the annotation, pause the deployment
  • Apply the changes to the deployment as usual (not triggering a rollout because of the pause)
  • Add a trigger to resume the deployment after the specified pause interval
  • If a change of a configmap or secret for the same deployment occurs during the pause interval, apply the changes (not triggering a rollout because of the pause)
  • When the trigger fires, resume the deployment resulting in a rollout with all the updates that occurred during the pause interval

That way updates during the pause interval would result into only one rollout containing all the changes.

Additional context
I opened a pull request #838 with a working draft of the code.
Note that the code is more or less just hacked together in order get something working. If the feature is accepted I would refactor to a better quality.

Thanks in advance for any feedback on this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant