]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
qa: fix rank_asok() to handle errors from asok commands
authorneeraj pratap singh <neerajpratapsingh@li-ff7f0d4c-3462-11b2-a85c-d4004c0fa1a0.ibm.com>
Wed, 18 Oct 2023 08:52:56 +0000 (14:22 +0530)
committerneeraj pratap singh <neerajpratapsingh@li-ff7f0d4c-3462-11b2-a85c-d4004c0fa1a0.ibm.com>
Wed, 24 Jan 2024 14:21:36 +0000 (19:51 +0530)
Fixes: https://tracker.ceph.com/issues/63176
Signed-off-by: Neeraj Pratap Singh <neesingh@redhat.com>
(cherry picked from commit 4af9f8eb6c189fcaec07ac64949c3037a92e7e8c)

qa/tasks/cephfs/filesystem.py

index 6541b70b76ac260787b95acb0435051922c17939..80044af214ec3d5d058b23f0e0b3924f8b7c64c4 100644 (file)
@@ -261,8 +261,14 @@ class CephCluster(object):
                      "-Infinity": -float("inf")}
                 return c[value]
 
-            j = json.loads(response_data.replace('inf', 'Infinity'),
-                           parse_constant=get_nonnumeric_values)
+            
+            j = {}
+            try:
+                j = json.loads(response_data.replace('inf', 'Infinity'),
+                            parse_constant=get_nonnumeric_values)
+            except json.decoder.JSONDecodeError:
+                raise RuntimeError(response_data) # assume it is an error message, pass it up
+            
             pretty = json.dumps(j, sort_keys=True, indent=2)
             log.debug(f"_json_asok output\n{pretty}")
             return j