51 lines
1.4 KiB
YAML
51 lines
1.4 KiB
YAML
---
|
|
# Copyright 2014, Rackspace US, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
# If cluster name is our own hostname, we assume we're not properly clustered
|
|
# TODO(someone): implement a more robust way of checking
|
|
# if node is clustered or not
|
|
- name: Check cluster status
|
|
shell: |
|
|
rabbitmqctl -q cluster_status | grep {{ rabbit_cluster_name }}
|
|
changed_when: result.rc != 0
|
|
failed_when: false
|
|
register: result
|
|
tags:
|
|
- rabbit_cluster
|
|
|
|
- name: Stop rabbit app
|
|
shell: |
|
|
rabbitmqctl stop_app && sleep 5
|
|
failed_when: false
|
|
when: result.rc != 0
|
|
tags:
|
|
- rabbit_stop_app
|
|
- rabbit_cluster
|
|
|
|
- name: Join rabbit cluster
|
|
shell: |
|
|
rabbitmqctl join_cluster "rabbit@{{ hostvars[groups['rabbit'][0]]['container_name'].split('.')[0] }}"
|
|
when: result.rc != 0
|
|
tags:
|
|
- rabbit_cluster
|
|
|
|
- name: Start rabbit app
|
|
shell: |
|
|
rabbitmqctl start_app
|
|
when: result.rc != 0
|
|
tags:
|
|
- rabbit_start_app
|
|
- rabbit_cluster
|