charm-rabbitmq-server/actions
Liam Young 3d5e1e22d8 Coordination module for rabbit restarts
Use the coordination module to manage restarting the rabbitmq
services. This is to ensure that restarts are only
performed on one unit at a time. This helps prevent
situation which can cause the cluster to become split
brained (eg if two or more nodes are restarted at the same
time).

* Manually run _run_atstart & _run_atexit method when actions
  are run as this does not happen automatically and is needed by
  the coordination layer.
* Replace restart_on_change decorator with
  coordinated_restart_on_change. coordinated_restart_on_change
  includes logic for requesting restart locks from the coordination
  module.
* The coordination module works via the leader and cluster events so
  the hooks now include calls to check_coordinated_functions
  which will run any function that is waiting for a lock.
* Logic has been added to check for the situation where a hook is
  being run via the run_deferred_hooks actions. If this is the
  case then restarts are immediate as the action should only be run
  on one unit at a time.

Change-Id: Ia133c90a610793d4da96d3400a3906b801b52b73
2022-02-17 11:06:00 +00:00
..
actions.py Coordination module for rabbit restarts 2022-02-17 11:06:00 +00:00
check-queues Add action to check rmq queues 2018-02-26 09:46:00 -07:00
cluster-status Add cluster_status action, correct actions.py typo 2017-10-11 21:39:04 +00:00
complete-cluster-series-upgrade Series Upgrade 2018-09-17 14:49:41 +02:00
force-boot Add `force-boot` action 2020-06-22 13:04:11 +03:00
forget-cluster-node Forget cluster node as an action 2020-06-09 08:48:13 -07:00
list-unconsumed-queues Added list-unconsumed-queues action 2019-02-27 09:36:13 +01:00
pause Add pause/resume actions and sync charm-helpers 2016-04-05 18:52:37 +00:00
restart-services Implementation of deferred restarts 2021-04-09 21:11:30 +00:00
resume Add pause/resume actions and sync charm-helpers 2016-04-05 18:52:37 +00:00
run-deferred-hooks Implementation of deferred restarts 2021-04-09 21:11:30 +00:00
show-deferred-events Implementation of deferred restarts 2021-04-09 21:11:30 +00:00