blob: f53019c020ba2850de7edc5db2a75a92db47dab0 [file] [log] [blame]
Filip Pytlounef5b0af2015-10-06 16:28:32 +02001{%- from "rabbitmq/map.jinja" import server with context %}
2{%- if server.enabled %}
3
4{%- for host_name, host in server.get('host', {}).iteritems() %}
5
6{%- if host.enabled %}
7
8{%- if host_name != '/' %}
9rabbitmq_vhost_{{ host_name }}:
10 rabbitmq_vhost.present:
11 - name: {{ host_name }}
12 - require:
13 - service: rabbitmq_service
14 - require_in:
15 - rabbitmq_user: rabbitmq_user_{{ host.user }}
16{%- endif %}
17
18rabbitmq_user_{{ host.user }}:
19 rabbitmq_user.present:
20 - name: {{ host.user }}
21 - password: {{ host.password }}
22 - force: true
23 - perms:
24 - '{{ host_name }}':
25 - '.*'
26 - '.*'
27 - '.*'
28
29{%- for policy in host.get('policies', []) %}
30
31rabbitmq_policy_{{ host_name }}_{{ policy.name }}:
32 rabbitmq_policy.present:
33 - name: {{ policy.name }}
34 - pattern: {{ policy.pattern }}
35 - definition: {{ policy.definition|json }}
Michel Nederlof0f236ae2017-06-22 14:54:03 +020036 - priority: {{ policy.get('priority', 0)|int }}
Filip Pytlounef5b0af2015-10-06 16:28:32 +020037 - vhost: {{ host_name }}
38 - require:
39 - service: rabbitmq_service
40
41{%- endfor %}
42
43{%- else %}
44
45rabbitmq_vhost_{{ host_name }}:
46 rabbitmq_vhost.absent:
47 - name: {{ host_name }}
48 - require:
49 - service: rabbitmq_service
50
51rabbitmq_user_{{ host.user }}:
52 rabbitmq_user.absent:
53 - name: {{ host.user }}
54 - require:
55 - service: rabbitmq_service
56
57{%- endif %}
58
59{%- endfor %}
60
61{%- endif %}