]> git.immae.eu Git - github/fretlink/ansible-rabbitmq.git/blob - tasks/rabbitmq_ha_config.yml
First commit of refactoring
[github/fretlink/ansible-rabbitmq.git] / tasks / rabbitmq_ha_config.yml
1 ---
2 - name: rabbitmq_ha_config | checking if rabbitmqadmin is installed
3 stat:
4 path: /usr/sbin/rabbitmqadmin
5 register: rabbitmqadmin_check
6
7 - name: rabbit_ha_config | Installing rabbitMQ admin
8 get_url:
9 url: http://guest:guest@localhost:15672/cli/rabbitmqadmin
10 dest: /usr/sbin/rabbitmqadmin
11 mode: u=rwx,g=rw,o=rw
12 become: true
13 notify: restart rabbitmq-server
14 when: not rabbitmqadmin_check['stat']['exists']
15
16 - name: rabbitmq_ha_config | creating queue(s)
17 command: rabbitmqadmin declare queue name={{ item['queue_name'] }} durable={{ item['durable']|lower }}
18 run_once: true
19 become: true
20 with_items: "{{ rabbitmq_config }}"
21
22 - name: rabbitmq_ha_config | setting up ha on queue(s)
23 rabbitmq_policy:
24 name: ha-all
25 pattern: "{{ item['queue_name'] }}"
26 tags: "{{ item['tags'] }}"
27 state: present
28 run_once: true
29 become: true
30 with_items: "{{ rabbitmq_config }}"
31
32 - name: rabbitmq_ha_config | creating exchange(s)
33 command: rabbitmqadmin declare exchange name={{ item['exchange_name'] }} type={{ item['type'] }}
34 run_once: true
35 become: true
36 with_items: "{{ rabbitmq_config }}"
37 when: item['exchange_name'] is defined
38
39 - name: rabbitmq_ha_config | creating binding(s)
40 command: rabbitmqadmin declare binding source={{ item['exchange_name'] }} destination_type="queue" destination={{ item['queue_name'] }} routing_key={{ item['routing_key'] }}
41 run_once: true
42 become: true
43 with_items: "{{ rabbitmq_config }}"
44 when: item['exchange_name'] is defined