]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ansible.git/commitdiff
ceph_pool: add support check mode
authorSeena Fallah <seenafallah@gmail.com>
Fri, 29 Mar 2024 19:31:56 +0000 (20:31 +0100)
committerSeena Fallah <seenafallah@gmail.com>
Wed, 3 Apr 2024 15:46:37 +0000 (17:46 +0200)
Signed-off-by: Seena Fallah <seenafallah@gmail.com>
(cherry picked from commit a45defd3869e95b06730abc0fe741c290d632b8c)

library/ceph_pool.py

index c04cd1eb14e14e158f1b789b834104460da3772c..96e66ddf8f6ef2bd5e4b86786b957321f784c49b 100644 (file)
@@ -589,17 +589,6 @@ def run_module():
         'min_size': {'value': min_size}
     }
 
-    if module.check_mode:
-        module.exit_json(
-            changed=False,
-            stdout='',
-            stderr='',
-            rc=0,
-            start='',
-            end='',
-            delta='',
-        )
-
     startd = datetime.datetime.now()
     changed = False
 
@@ -617,7 +606,8 @@ def run_module():
                                                           user,
                                                           user_key,
                                                           container_image=container_image))  # noqa: E501
-        if rc == 0:
+        changed = rc != 0
+        if not changed:
             running_pool_details = get_pool_details(module,
                                                     cluster,
                                                     name,
@@ -636,9 +626,8 @@ def run_module():
                     delta.pop('pg_num', None)
                     delta.pop('pgp_num', None)
 
-                if len(delta) == 0:
-                    out = "Skipping pool {}.\nUpdating either 'size' on an erasure-coded pool or 'pg_num'/'pgp_num' on a pg autoscaled pool is incompatible".format(name)  # noqa: E501
-                else:
+                changed = len(delta) > 0
+                if changed and not module.check_mode:
                     rc, cmd, out, err = update_pool(module,
                                                     cluster,
                                                     name,
@@ -646,11 +635,7 @@ def run_module():
                                                     user_key,
                                                     delta,
                                                     container_image=container_image)  # noqa: E501
-                    if rc == 0:
-                        changed = True
-            else:
-                out = "Pool {} already exists and there is nothing to update.".format(name)  # noqa: E501
-        else:
+        elif not module.check_mode:
             rc, cmd, out, err = exec_command(module,
                                              create_pool(cluster,
                                                          user,
@@ -675,7 +660,6 @@ def run_module():
             if user_pool_config['min_size']['value']:
                 # not implemented yet
                 pass
-            changed = True
 
     elif state == "list":
         rc, cmd, out, err = exec_command(module,
@@ -693,17 +677,14 @@ def run_module():
                                                           name, user,
                                                           user_key,
                                                           container_image=container_image))  # noqa: E501
-        if rc == 0:
+        changed = rc == 0
+        if changed and not module.check_mode:
             rc, cmd, out, err = exec_command(module,
                                              remove_pool(cluster,
                                                          name,
                                                          user,
                                                          user_key,
                                                          container_image=container_image))  # noqa: E501
-            changed = True
-        else:
-            rc = 0
-            out = "Skipped, since pool {} doesn't exist".format(name)
 
     exit_module(module=module, out=out, rc=rc, cmd=cmd, err=err, startd=startd,
                 changed=changed)