]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
qa/rgw: radosgw_admin_rest task tolerates empty responses
authorCasey Bodley <cbodley@redhat.com>
Thu, 26 Jul 2018 13:59:10 +0000 (09:59 -0400)
committerCasey Bodley <cbodley@redhat.com>
Fri, 27 Jul 2018 18:29:47 +0000 (14:29 -0400)
result.json() throws a 'JSONDecodeError: Expecting value: line 1 column 1'
for requests that return no body, such as 'user rm' 'key rm' 'subuser
rm', 'bucket unlink', etc

Signed-off-by: Casey Bodley <cbodley@redhat.com>
qa/tasks/radosgw_admin_rest.py

index 401e0002254ba3f95496733cbb8ae44fe1215b69..c54e1bf394b16d3ebc6a35b9d2494c310f06b71a 100644 (file)
@@ -104,8 +104,12 @@ def rgwadmin_rest(connection, cmd, params=None, headers=None, raw=False):
     result = handler(url, params=params, headers=request.headers)
 
     if raw:
-        log.info(' text result: %s' % result.txt)
-        return result.status_code, result.txt
+        log.info(' text result: %s' % result.text)
+        return result.status_code, result.text
+    elif len(result.content) == 0:
+        # many admin requests return no body, so json() throws a JSONDecodeError
+        log.info(' empty result')
+        return result.status_code, None
     else:
         log.info(' json result: %s' % result.json())
         return result.status_code, result.json()