I am deploying my (workflow & activity) workers on Kubernetes. Today, I was wondering what the proper way is to upgrade these workers to a new version? Given Kubernetes wants to stop the old version, how can I align this with the worker process itself? My intent is this:
- the old worker can still finish the ongoing activity.
- the old worker may not pull for additional messages to process.
- the worker process ends gracefully and the pod is cleaned up
Aligned to it, if my workflow uses session support, can I keep my old worker alive until all the required activities for that session are executed?