]> git.apps.os.sepia.ceph.com Git - ceph-ansible.git/commitdiff
ceph-mds: group similar tasks in create_mds_filesystem.yml
authorRishabh Dave <ridave@redhat.com>
Wed, 24 Apr 2019 09:08:15 +0000 (14:38 +0530)
committerGuillaume Abrioux <gabrioux@redhat.com>
Fri, 10 May 2019 13:54:40 +0000 (15:54 +0200)
Group similar tasks together using block keyword.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
(cherry picked from commit 1a4dccdbb9266cc1e86b3d302aa8b00bfb3cd4e2)

roles/ceph-mds/tasks/create_mds_filesystems.yml

index 027a111c23e26f5164c1895dd018d4b5c83576c8..d00af283c52e11d1a91d7727ca777c0815cb71b2 100644 (file)
@@ -1,74 +1,74 @@
 ---
-- name: compile a list of pool names
-  set_fact:
-    cephfs_pool_names: "{{ cephfs_pools | map(attribute='name') | list }}"
-
-- name: check if filesystem pool already exists
+- name: check and deploy filesystem pools
   delegate_to: "{{ groups[mon_group_name][0] }}"
   block:
-    - name: get and store list of filesystem pools
-      command: "{{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }} osd pool ls"
-      changed_when: false
-      register: osd_pool_ls
+    - name: check if filesystem pool already exists
+      block:
+        - name: compile a list of pool names
+          set_fact:
+            cephfs_pool_names: "{{ cephfs_pools | map(attribute='name') | list }}"
 
-    - name: look whether pools to be created are present in the output
-      set_fact:
-        fs_pools_created: True
-      when: osd_pool_ls.stdout_lines | intersect(cephfs_pool_names) | length > 0
+        - name: get and store list of filesystem pools
+          command: "{{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }} osd pool ls"
+          changed_when: false
+          register: osd_pool_ls
 
-- name: deploy filesystem pools
-  when: fs_pools_created is not defined
-  delegate_to: "{{ groups[mon_group_name][0] }}"
-  block:
-    - name: create filesystem pools
-      command: >
-        {{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }}
-        osd pool create {{ item.name }}
-        {{ item.pg_num | default(item.pgs) | default(osd_pool_default_pg_num) }}
-        {{ item.pgp_num | default(item.pgs) | default(item.pg_num) | default(osd_pool_default_pg_num) }}
-        {{ 'replicated_rule' if not item.rule_name | default('replicated_rule') else item.rule_name | default('replicated_rule') }}
-        {{ 1 if item.type|default(1) == 'replicated' else 3 if item.type|default(1) == 'erasure' else item.type|default(1) }}
-        {%- if (item.type | default("1") == '3' or item.type | default("1") == 'erasure') and item.erasure_profile != '' %}
-        {{ item.erasure_profile }}
-        {%- endif %}
-        {{ item.expected_num_objects | default('') }}
-      changed_when: false
-      with_items:
-        - "{{ cephfs_pools }}"
+        - name: look whether pools to be created are present in the output
+          set_fact:
+            fs_pools_created: True
+          when: osd_pool_ls.stdout_lines | intersect(cephfs_pool_names) | length > 0
 
-    - name: customize pool size
-      command: "{{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }} osd pool set {{ item.name }} size {{ item.size | default(osd_pool_default_size) }}"
-      with_items: "{{ cephfs_pools | unique }}"
-      changed_when: false
-      when: item.size | default(osd_pool_default_size) != ceph_osd_pool_default_size
+    - name: deploy filesystem pools
+      when: fs_pools_created is not defined
+      block:
+        - name: create filesystem pools
+          command: >
+            {{ hostvars[groups[mon_group_name][0]]['docker_exec_cmd'] | default('') }} ceph --cluster {{ cluster }}
+            osd pool create {{ item.name }}
+            {{ item.pg_num | default(item.pgs) | default(osd_pool_default_pg_num) }}
+            {{ item.pgp_num | default(item.pgs) | default(item.pg_num) | default(osd_pool_default_pg_num) }}
+            {{ 'replicated_rule' if not item.rule_name | default('replicated_rule') else item.rule_name | default('replicated_rule') }}
+            {{ 1 if item.type|default(1) == 'replicated' else 3 if item.type|default(1) == 'erasure' else item.type|default(1) }}
+            {%- if (item.type | default("1") == '3' or item.type | default("1") == 'erasure') and item.erasure_profile != '' %}
+            {{ item.erasure_profile }}
+            {%- endif %}
+            {{ item.expected_num_objects | default('') }}
+          changed_when: false
+          with_items:
+            - "{{ cephfs_pools }}"
 
-    - name: customize pool min_size
-      command: "{{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }} osd pool set {{ item.name }} min_size {{ item.min_size | default(osd_pool_default_min_size) }}"
-      with_items: "{{ cephfs_pools | unique }}"
-      changed_when: false
-      when: (item.min_size | default(osd_pool_default_min_size))|int > ceph_osd_pool_default_min_size
+        - name: customize pool size
+          command: "{{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }} osd pool set {{ item.name }} size {{ item.size | default(osd_pool_default_size) }}"
+          with_items: "{{ cephfs_pools | unique }}"
+          changed_when: false
+          when: item.size | default(osd_pool_default_size) != ceph_osd_pool_default_size
 
-- name: check if ceph filesystem already exists
-  command: "{{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }} fs get {{ cephfs }}"
-  register: check_existing_cephfs
-  changed_when: false
-  failed_when: false
-  delegate_to: "{{ groups[mon_group_name][0] }}"
+        - name: customize pool min_size
+          command: "{{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }} osd pool set {{ item.name }} min_size {{ item.min_size | default(osd_pool_default_min_size) }}"
+          with_items: "{{ cephfs_pools | unique }}"
+          changed_when: false
+          when: (item.min_size | default(osd_pool_default_min_size))|int > ceph_osd_pool_default_min_size
 
-- name: create ceph filesystem
-  command: "{{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }} fs new {{ cephfs }} {{ cephfs_metadata }} {{ cephfs_data }}"
-  changed_when: false
-  delegate_to: "{{ groups[mon_group_name][0] }}"
-  when: check_existing_cephfs.rc != 0
+        - name: assign application to cephfs pools
+          command: "{{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }} osd pool application enable {{ item }} cephfs"
+          with_items:
+            - "{{ cephfs_data }}"
+            - "{{ cephfs_metadata }}"
+          changed_when: false
 
-- name: assign application to cephfs pools
-  command: "{{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }} osd pool application enable {{ item }} cephfs"
-  with_items:
-    - "{{ cephfs_data }}"
-    - "{{ cephfs_metadata }}"
-  changed_when: false
+- name: check and create ceph filesystem
   delegate_to: "{{ groups[mon_group_name][0] }}"
-  when: check_existing_cephfs.rc != 0
+  block:
+    - name: check if ceph filesystem already exists
+      command: "{{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }} fs get {{ cephfs }}"
+      register: check_existing_cephfs
+      changed_when: false
+      failed_when: false
+
+    - name: create ceph filesystem
+      command: "{{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }} fs new {{ cephfs }} {{ cephfs_metadata }} {{ cephfs_data }}"
+      changed_when: false
+      when: check_existing_cephfs.rc != 0
 
 - name: set max_mds
   command: "{{ docker_exec_cmd | default('') }} ceph --cluster {{ cluster }} fs set {{ cephfs }} max_mds {{ mds_max_mds }}"