cluster-maxunavailable: let the controller set the pre-drain hook on Machines of a paused Cluster
Related to sylva-projects/sylva-core#2878 (closed)
What this MR is doing: on a paused Cluster, instead of not doing anything the controller will still (if conditions are met) add the pre-drain hook to machines. This is a safe action that is guaranteed not to change the state of the Cluster. With this MR we don't let the controller do any other action on a paused cluster, because there is no need to, and it's simply better to minimize the things we do on Machines of a paused cluster; so "removing the pre-drain hook" will never be done on machines of a paused cluster.
This was successfully tested in sylva-projects/sylva-core!5478 (merged) (which is the MR that exposed the problematic case that this MR is addressing) and addresses sylva-projects/sylva-core#2878 (closed)