]> git.immae.eu Git - github/fretlink/ansible-rabbitmq.git/blobdiff - tasks/rabbitmq_users.yml
Merge remote-tracking branch 'gaetanfl/cluster_strategy' into fretlink-fixes
[github/fretlink/ansible-rabbitmq.git] / tasks / rabbitmq_users.yml
index 3e1997a2a2e7b93db06ca563d879d8c4cd18be74..d09d624d7c3dcbb91b8305a13814577040d39c4d 100644 (file)
@@ -1,27 +1,34 @@
 ---
 - name: rabbitmq_users | creating rabbitmq users
   rabbitmq_user:
-    name: "{{ item.name }}"
-    password: "{{ item.password }}"
-    vhost: "{{ item.vhost }}"
-    configure_priv: "{{ item.configure_priv }}"
-    read_priv: "{{ item.read_priv }}"
-    write_priv: "{{ item.write_priv }}"
-    tags: "{{ item.tags }}"
+    name: "{{ item['name'] }}"
+    password: "{{ item['password'] }}"
+    vhost: "{{ item['vhost']|default(omit) }}"
+    configure_priv: "{{ item['configure_priv']|default(omit) }}"
+    read_priv: "{{ item['read_priv']|default(omit) }}"
+    write_priv: "{{ item['write_priv']|default(omit) }}"
+    tags: "{{ item['tags']|default(omit) }}"
+    permissions: "{{ item['permissions']|default(omit) }}"
     state: present
+  run_once: rabbitmq_enable_clustering is defined and rabbitmq_enable_clustering
+  delegate_to: "{{ rabbitmq_master|default(omit) }}"
+  become: true
   with_items: "{{ rabbitmq_users }}"
-  when: (enable_rabbitmq_clustering is defined and not enable_rabbitmq_clustering) or enable_rabbitmq_clustering is not defined
+  when: rabbitmq_debian_version is version('3.7.9', '<')
 
-- name: rabbitmq_users | creating rabbitmq users
-  rabbitmq_user:
-    name: "{{ item.name }}"
-    password: "{{ item.password }}"
-    vhost: "{{ item.vhost }}"
-    configure_priv: "{{ item.configure_priv }}"
-    read_priv: "{{ item.read_priv }}"
-    write_priv: "{{ item.write_priv }}"
-    tags: "{{ item.tags }}"
+- name: rabbitmq_users | creating rabbitmq users (rabbit >= 3.7.9)
+  rabbitmq_user_3_7_9:
+    name: "{{ item['name'] }}"
+    password: "{{ item['password'] }}"
+    vhost: "{{ item['vhost']|default(omit) }}"
+    configure_priv: "{{ item['configure_priv']|default(omit) }}"
+    read_priv: "{{ item['read_priv']|default(omit) }}"
+    write_priv: "{{ item['write_priv']|default(omit) }}"
+    tags: "{{ item['tags']|default(omit) }}"
+    permissions: "{{ item['permissions']|default(omit) }}"
     state: present
-  run_once: yes
+  run_once: rabbitmq_enable_clustering is defined and rabbitmq_enable_clustering
+  delegate_to: "{{ rabbitmq_master|default(omit) }}"
+  become: true
   with_items: "{{ rabbitmq_users }}"
-  when: (enable_rabbitmq_clustering is defined and enable_rabbitmq_clustering)
+  when: rabbitmq_debian_version is version('3.7.9', '>=')