If you control the deployment, maybe you can run the script that executes Control.broadcast into a user command that you can advance in advance and only after receiving the necessary answers (you have to implement this logic), will you continue the deployment (or raise a TimeoutException)?
In addition, celery already has a predefined command to complete the work , which I assume that you can overload your instance or subclass of the worker. The advantage of the commands is the transfer of the Panel instance, which allows access to the consumer . That should expose a lot of control right there ...
source share