aboutsummaryrefslogtreecommitdiffstats
path: root/deploy/adapters/ansible/roles/mq/tasks/rabbitmq_cluster.yml
diff options
context:
space:
mode:
Diffstat (limited to 'deploy/adapters/ansible/roles/mq/tasks/rabbitmq_cluster.yml')
-rw-r--r--deploy/adapters/ansible/roles/mq/tasks/rabbitmq_cluster.yml17
1 files changed, 16 insertions, 1 deletions
diff --git a/deploy/adapters/ansible/roles/mq/tasks/rabbitmq_cluster.yml b/deploy/adapters/ansible/roles/mq/tasks/rabbitmq_cluster.yml
index a84cbeda..50c062f5 100644
--- a/deploy/adapters/ansible/roles/mq/tasks/rabbitmq_cluster.yml
+++ b/deploy/adapters/ansible/roles/mq/tasks/rabbitmq_cluster.yml
@@ -7,15 +7,30 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
---
+- name: check if i in the node list
+ shell: |
+ rabbitmqctl -q cluster_status | grep '\[{nodes,'|grep {{ inventory_hostname }}
+ changed_when: is_member.rc != 0
+ failed_when: false
+ register: is_member
+ delegate_to: '{{ haproxy_hosts.keys()[0] }}'
+
- name: stop rabbitmq app
- shell: rabbitmqctl stop_app; sleep 3
+ shell: |
+ rabbitmqctl stop_app; sleep 5
+ failed_when: false
+ when: is_member.rc != 0
- name: join cluster
shell: rabbitmqctl join_cluster rabbit@{{ haproxy_hosts.keys()[0] }}
register: join_result
+ when: is_member.rc != 0
until: join_result|success
+ failed_when: join_result|failed and not 'already_member' in join_result.stderr
+ changed_when: join_result|success
retries: 20
delay: 3
- name: start rabbitmq app
shell: rabbitmqctl start_app
+ when: is_member.rc != 0