]>
Commit | Line | Data |
---|---|---|
109c6b75 LSJ |
1 | --- |
2 | - name: rabbitmq_ha_config | checking if rabbitmqadmin is installed | |
3 | stat: | |
4 | path: /usr/sbin/rabbitmqadmin | |
5 | register: rabbitmqadmin_check | |
6 | ||
4353d29a LSJ |
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 | |
a67dde50 | 12 | become: true |
4353d29a | 13 | notify: restart rabbitmq-server |
a67dde50 | 14 | when: not rabbitmqadmin_check['stat']['exists'] |
109c6b75 | 15 | |
fa6c482b PB |
16 | - name: rabbitmq_ha_config | creating exchange(s) |
17 | command: rabbitmqadmin declare exchange name={{ item['exchange_name'] }} type={{ item['type'] }} --vhost={{ item['vhost'] | default('/') }} | |
18 | run_once: true | |
19 | delegate_to: "{{ rabbitmq_master }}" | |
20 | become: true | |
21 | with_items: "{{ rabbitmq_config }}" | |
22 | when: item['exchange_name'] is defined | |
23 | ||
109c6b75 | 24 | - name: rabbitmq_ha_config | creating queue(s) |
ebb0d317 | 25 | command: rabbitmqadmin declare queue name={{ item['queue_name'] }} durable={{ item['durable']|lower }} --vhost={{ item['vhost'] | default('/') }} |
109c6b75 | 26 | run_once: true |
fa6c482b | 27 | delegate_to: "{{ rabbitmq_master }}" |
a67dde50 | 28 | become: true |
c3b85a38 GD |
29 | when: |
30 | - item['queue_name'] is defined | |
109c6b75 LSJ |
31 | with_items: "{{ rabbitmq_config }}" |
32 | ||
33 | - name: rabbitmq_ha_config | setting up ha on queue(s) | |
34 | rabbitmq_policy: | |
c3b85a38 GD |
35 | name: "ha-all{{ policy_name }}" |
36 | pattern: "{{ item.queue_name | default(item.policy_pattern) }}" | |
37 | vhost: "{{ item.vhost | default('/') }}" | |
38 | tags: "{{ item.tags }}" | |
109c6b75 | 39 | state: present |
c3b85a38 GD |
40 | vars: |
41 | policy_vhost: "{{ item.vhost | default('/') }}" | |
42 | policy_name: "{{ item.policy_pattern is defined | ternary(policy_vhost + item.policy_pattern|default(''),item.queue_name|default('')) }}" | |
109c6b75 | 43 | run_once: true |
fa6c482b | 44 | delegate_to: "{{ rabbitmq_master }}" |
a67dde50 | 45 | become: true |
c3b85a38 | 46 | when: item.queue_name is defined or item.policy_pattern is defined |
109c6b75 LSJ |
47 | with_items: "{{ rabbitmq_config }}" |
48 | ||
109c6b75 | 49 | - name: rabbitmq_ha_config | creating binding(s) |
ebb0d317 | 50 | command: rabbitmqadmin declare binding source={{ item['exchange_name'] }} destination_type="queue" destination={{ item['queue_name'] }} routing_key={{ item['routing_key'] }} --vhost={{ item['vhost'] | default('/') }} |
109c6b75 | 51 | run_once: true |
fa6c482b | 52 | delegate_to: "{{ rabbitmq_master }}" |
a67dde50 | 53 | become: true |
109c6b75 | 54 | with_items: "{{ rabbitmq_config }}" |
a67dde50 | 55 | when: item['exchange_name'] is defined |