-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Make Argo Workflows Deployment Restart on Config change using Helm ConfigMap annotation #2622
Comments
I initially requested in the wrong repo argoproj/argo-workflows#12876 |
As I wrote in the upstream issue, this feature should be optional for the Controller as it is built into Workflows already. The value should also be explicitly documented as such. This also would be good to have for the Server, which does not yet have a built-in watcher: argoproj/argo-workflows#10970
For this part, I don't know that this is necessarily correct. Disabling the watcher will certainly use less constant memory, but it may not be significant. In terms of CPU, disk I/O, and network I/O, restarting the entire deployment instead of an in-memory hot reload is certainly more expensive (and creates churn on the cluster). I think it would be more appropriate to call it a trade-off when it comes to performance. You could also call it an optional workaround for a current bug (and any future such bugs), which is caused by an upstream k8s issue, and which can cause performance degradation. |
I agree with @agilgur5. I think this should be a toggle(s) in the helm chart values file. Either use the config watcher to hot-reload config changes, or use the helm If the toggle is enabled:
If the toggle is disabled (the default value):
|
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Is your feature request related to a problem?
Using Argo-CD to deploy Argo Workflows means that it might not be automatically restarted if a configuration change is made that doesn't affect a deployment.
Related helm chart
argo-workflows
Describe the solution you'd like
Add an annotation to the Argo Workflows helm chart as documented:
https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments
Then the deployment will update when a ConfigMap updates and so a new deployment will rollout when using Argo CD.
Describe alternatives you've considered
Argo Workflows does have a config watcher, but this has been causing issues argoproj/argo-workflows#11657. Whilst a fix is in the works, this still has load on a cluster. The Helm/yaml annotation method is simpler (IMHO) and much cheaper in terms of resource.
Additional context
No response
The text was updated successfully, but these errors were encountered: