---
-- name: rabbitmq_ha_config | install | install rabbitMQ admin
- shell: wget http://guest:guest@localhost:55672/cli/rabbitmqadmin
+- name: rabbitmq_ha_config | checking if rabbitmqadmin is installed
+ stat:
+ path: /usr/sbin/rabbitmqadmin
+ register: rabbitmqadmin_check
-- name: Move the rabbitMQ Admin
+- name: rabbitmq_ha_config | install rabbitMQ admin
+ shell: wget http://guest:guest@localhost:15672/cli/rabbitmqadmin
+ become: true
+ when: not rabbitmqadmin_check['stat']['exists']
+
+- name: rabbitmq_ha_config | moving the rabbitMQ Admin
shell: mv rabbitmqadmin /usr/sbin
+ become: true
+ when: not rabbitmqadmin_check['stat']['exists']
-- name: Make executable rabbitMQ Admin
+- name: rabbitmq_ha_config | making executable rabbitMQ Admin
shell: chmod +x /usr/sbin/rabbitmqadmin
notify: restart rabbitmq-server
+ become: true
+ when: not rabbitmqadmin_check['stat']['exists']
-- name: rabbitmq_ha_config | config | creating queue(s)
- command: rabbitmqadmin declare queue name={{ item.queue_name }} durable={{ item.durable }}
+- name: rabbitmq_ha_config | creating queue(s)
+ command: rabbitmqadmin declare queue name={{ item['queue_name'] }} durable={{ item['durable']|lower }}
run_once: true
- with_items: rabbitmq_config
+ become: true
+ with_items: "{{ rabbitmq_config }}"
-- name: rabbitmq_ha_config | config | setting up ha on queue(s)
- rabbitmq_policy: name='ha-all' pattern='{{ item.queue_name }}' tags="{{ item.tags }}" state=present
+- name: rabbitmq_ha_config | setting up ha on queue(s)
+ rabbitmq_policy:
+ name: "ha-all"
+ pattern: "{{ item['queue_name'] }}"
+ tags: "{{ item['tags'] }}"
+ state: present
run_once: true
- with_items: rabbitmq_config
+ become: true
+ with_items: "{{ rabbitmq_config }}"
-- name: rabbitmq_ha_config | config | creating exchange(s)
- command: rabbitmqadmin declare exchange name={{ item.exchange_name }} type={{ item.type }}
+- name: rabbitmq_ha_config | creating exchange(s)
+ command: rabbitmqadmin declare exchange name={{ item['exchange_name'] }} type={{ item['type'] }}
run_once: true
- with_items: rabbitmq_config
+ become: true
+ with_items: "{{ rabbitmq_config }}"
+ when: item['exchange_name'] is defined
-- name: rabbitmq_ha_config | config | creating binding(s)
- command: rabbitmqadmin declare binding source={{ item.exchange_name }} destination_type="queue" destination={{ item.queue_name }} routing_key={{ item.routing_key }}
+- name: rabbitmq_ha_config | creating binding(s)
+ command: rabbitmqadmin declare binding source={{ item['exchange_name'] }} destination_type="queue" destination={{ item['queue_name'] }} routing_key={{ item['routing_key'] }}
run_once: true
- with_items: rabbitmq_config
+ become: true
+ with_items: "{{ rabbitmq_config }}"
+ when: item['exchange_name'] is defined