]> git-server-git.apps.pok.os.sepia.ceph.com Git - teuthology.git/commitdiff
radosgw-admin: use check_status for task success
authorJoe Buck <jbbuck@gmail.com>
Wed, 21 Aug 2013 19:18:31 +0000 (12:18 -0700)
committerJoe Buck <jbbuck@gmail.com>
Wed, 21 Aug 2013 19:38:53 +0000 (12:38 -0700)
Alter the code to use the 'check_status=True'
option in rgwadmin() rather than following the
call with 'assert not err'. Should make the
tests a bit more clear and result in a more
useful error (throw the call stack rather than
just 'assert new err failed').

Signed-off-by: Joe Buck <jbbuck@gmail.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
teuthology/task/radosgw-admin.py

index 083da65eb08dcf036da8ba901d080afd884fcef2..3f9daeba88faf75cac3ab9b2138b043d7201533c 100644 (file)
@@ -114,8 +114,8 @@ def task(ctx, config):
             '--access-key', access_key,
             '--secret', secret_key,
             '--max-buckets', '4'
-            ])
-    assert not err
+            ],
+            check_status=True)
 
     # TESTCASE 'duplicate email','user','create','existing user email','fails'
     (err, out) = rgwadmin(ctx, client, [
@@ -127,8 +127,7 @@ def task(ctx, config):
     assert err
 
     # TESTCASE 'info-existing','user','info','existing user','returns correct info'
-    (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1], check_status=True)
     assert out['user_id'] == user1
     assert out['email'] == email
     assert out['display_name'] == display_name1
@@ -144,8 +143,7 @@ def task(ctx, config):
         for agent_client, c_config in ctx.radosgw_agent.config.iteritems():
             dest_client = c_config['dest']
             (err, out) = rgwadmin(ctx, dest_client, ['metadata', 'list', 'user'])
-            (err, out) = rgwadmin(ctx, dest_client, ['user', 'info', '--uid', user1])
-            assert not err
+            (err, out) = rgwadmin(ctx, dest_client, ['user', 'info', '--uid', user1], check_status=True)
             assert out['user_id'] == user1
             assert out['email'] == email
             assert out['display_name'] == display_name1
@@ -158,10 +156,10 @@ def task(ctx, config):
         for agent_client, c_config in ctx.radosgw_agent.config.iteritems():
             source_client = c_config['src']
             dest_client = c_config['dest']
-            (err1, out1) = rgwadmin(ctx, source_client, ['metadata', 'get', 'user:{uid}'.format(uid=user1)])
-            (err2, out2) = rgwadmin(ctx, dest_client, ['metadata', 'get', 'user:{uid}'.format(uid=user1)])
-            assert not err1
-            assert not err2
+            (err1, out1) = rgwadmin(ctx, source_client, 
+                ['metadata', 'get', 'user:{uid}'.format(uid=user1)], check_status=True)
+            (err2, out2) = rgwadmin(ctx, dest_client, 
+                ['metadata', 'get', 'user:{uid}'.format(uid=user1)], check_status=True)
             assert out1 == out2
     
         # suspend a user on the master, then check the status on the destination
@@ -170,16 +168,14 @@ def task(ctx, config):
             dest_client = c_config['dest']
             (err, out) = rgwadmin(ctx, source_client, ['user', 'suspend', '--uid', user1])
             rgw_utils.radosgw_agent_sync_all(ctx)
-            (err, out) = rgwadmin(ctx, dest_client, ['user', 'info', '--uid', user1])
-            assert not err
+            (err, out) = rgwadmin(ctx, dest_client, ['user', 'info', '--uid', user1], check_status=True)
             assert out['suspended']
     
         # delete a user on the master, then check that it's gone on the destination
         for agent_client, c_config in ctx.radosgw_agent.config.iteritems():
             source_client = c_config['src']
             dest_client = c_config['dest']
-            (err, out) = rgwadmin(ctx, source_client, ['user', 'rm', '--uid', user1])
-            assert not err
+            (err, out) = rgwadmin(ctx, source_client, ['user', 'rm', '--uid', user1], check_status=True)
             rgw_utils.radosgw_agent_sync_all(ctx)
             (err, out) = rgwadmin(ctx, source_client, ['user', 'info', '--uid', user1])
             assert out is None
@@ -195,8 +191,8 @@ def task(ctx, config):
                 '--access-key', access_key,
                 '--secret', secret_key,
                 '--max-buckets', '4'
-                ])
-            assert not err
+                ],
+                check_status=True)
 
         # now do the multi-region bucket tests
 
@@ -209,10 +205,9 @@ def task(ctx, config):
             '--access-key', access_key2,
             '--secret', secret_key2,
             '--max-buckets', '4'
-            ])
-        assert not err
-        (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user2])
-        assert not err
+            ],
+            check_status=True)
+        (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user2], check_status=True)
         assert out is not None
 
         # create a bucket and do a sync
@@ -224,11 +219,11 @@ def task(ctx, config):
             source_client = c_config['src']
             dest_client = c_config['dest']
             (err1, out1) = rgwadmin(ctx, source_client, 
-                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)])
+                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)],
+                check_status=True)
             (err2, out2) = rgwadmin(ctx, dest_client, 
-                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)])
-            assert not err1
-            assert not err2
+                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)],
+                check_status=True)
             assert out1 == out2
 
             # get the bucket.instance info and compare that
@@ -236,12 +231,12 @@ def task(ctx, config):
             dest_bucket_id = out2['data']['bucket']['bucket_id']
             (err1, out1) = rgwadmin(ctx, source_client, ['metadata', 'get', 
                 'bucket.instance:{bucket_name}:{bucket_instance}'.format(
-                bucket_name=bucket_name2,bucket_instance=src_bucket_id)])
+                bucket_name=bucket_name2,bucket_instance=src_bucket_id)],
+                check_status=True)
             (err2, out2) = rgwadmin(ctx, dest_client, ['metadata', 'get', 
                 'bucket.instance:{bucket_name}:{bucket_instance}'.format(
-                bucket_name=bucket_name2,bucket_instance=dest_bucket_id)])
-            assert not err1
-            assert not err2
+                bucket_name=bucket_name2,bucket_instance=dest_bucket_id)],
+                check_status=True)
             assert out1 == out2
     
         for agent_client, c_config in ctx.radosgw_agent.config.iteritems():
@@ -297,11 +292,11 @@ def task(ctx, config):
             source_client = c_config['src']
             dest_client = c_config['dest']
             (err1, out1) = rgwadmin(ctx, source_client, 
-                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)])
+                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)],
+                check_status=True)
             (err2, out2) = rgwadmin(ctx, dest_client, 
-                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)])
-            assert not err1
-            assert not err2
+                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)],
+                check_status=True)
             assert out1 == out2
 
         # Now delete the bucket and recreate it with a different user 
@@ -316,11 +311,11 @@ def task(ctx, config):
             source_client = c_config['src']
             dest_client = c_config['dest']
             (err1, out1) = rgwadmin(ctx, source_client, 
-                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)])
+                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)],
+                check_status=True)
             (err2, out2) = rgwadmin(ctx, dest_client, 
-                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)])
-            assert not err1
-            assert not err2
+                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)],
+                check_status=True)
             assert out1 == out2
             assert out1['data']['owner'] == user2
             assert out1['data']['owner'] != user1
@@ -332,21 +327,22 @@ def task(ctx, config):
 
             # get the metadata so we can tweak it
             (err, orig_data) = rgwadmin(ctx, source_client, 
-                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)])
-            assert not err
+                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)],
+                check_status=True)
 
             # manually edit mtime for this bucket to be 300 seconds in the past
             new_data = copy.deepcopy(orig_data)
             new_data['mtime'] =  orig_data['mtime'] - 300
             assert new_data != orig_data
             (err, out) = rgwadmin(ctx, source_client, 
-                ['metadata', 'put', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)], stdin=StringIO(json.dumps(new_data)))
-            assert not err
+                ['metadata', 'put', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)], 
+                stdin=StringIO(json.dumps(new_data)),
+                check_status=True)
 
             # get the metadata and make sure that the 'put' worked
             (err, out) = rgwadmin(ctx, source_client, 
-                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)])
-            assert not err
+                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)],
+                check_status=True)
             assert out == new_data
 
             # sync to propagate the new metadata 
@@ -355,11 +351,11 @@ def task(ctx, config):
             # get the metadata from the dest and compare it to what we just set
             # and what the source region has. 
             (err1, out1) = rgwadmin(ctx, source_client, 
-                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)])
+                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)],
+                check_status=True)
             (err2, out2) = rgwadmin(ctx, dest_client, 
-                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)])
-            assert not err1
-            assert not err2
+                ['metadata', 'get', 'bucket:{bucket_name}'.format(bucket_name=bucket_name2)],
+                check_status=True)
             # yeah for the transitive property
             assert out1 == out2
             assert out1 == new_data
@@ -372,9 +368,11 @@ def task(ctx, config):
         for agent_client, c_config in ctx.radosgw_agent.config.iteritems():
             source_client = c_config['src']
             dest_client = c_config['dest']
-            (err, out) = rgwadmin(ctx, source_client, ['user', 'rm', '--uid', user2])
-            assert not err
+            (err, out) = rgwadmin(ctx, source_client, 
+                ['user', 'rm', '--uid', user2], check_status=True)
             rgw_utils.radosgw_agent_sync_all(ctx)
+            # The two 'user info' calls should fail and not return any data 
+            # since we just deleted this user.
             (err, out) = rgwadmin(ctx, source_client, ['user', 'info', '--uid', user2])
             assert out is None
             (err, out) = rgwadmin(ctx, dest_client, ['user', 'info', '--uid', user2])
@@ -383,33 +381,29 @@ def task(ctx, config):
     # end of 'if multi_region_run:'
 
     # TESTCASE 'suspend-ok','user','suspend','active user','succeeds'
-    (err, out) = rgwadmin(ctx, client, ['user', 'suspend', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['user', 'suspend', '--uid', user1]
+        check_status=True)
 
     # TESTCASE 'suspend-suspended','user','suspend','suspended user','succeeds w/advisory'
-    (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1], check_status=True)
     assert out['suspended']
 
     # TESTCASE 're-enable','user','enable','suspended user','succeeds'
-    (err, out) = rgwadmin(ctx, client, ['user', 'enable', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['user', 'enable', '--uid', user1], check_status=True)
 
     # TESTCASE 'info-re-enabled','user','info','re-enabled user','no longer suspended'
-    (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1], check_status=True)
     assert not out['suspended']
 
     # TESTCASE 'add-keys','key','create','w/valid info','succeeds'
     (err, out) = rgwadmin(ctx, client, [
             'key', 'create', '--uid', user1,
             '--access-key', access_key2, '--secret', secret_key2,
-            ])
-    assert not err
+            ], check_status=True)
 
     # TESTCASE 'info-new-key','user','info','after key addition','returns all keys'
-    (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1]
+        check_status=True)
     assert len(out['keys']) == 2
     assert out['keys'][0]['access_key'] == access_key2 or out['keys'][1]['access_key'] == access_key2
     assert out['keys'][0]['secret_key'] == secret_key2 or out['keys'][1]['secret_key'] == secret_key2
@@ -418,8 +412,7 @@ def task(ctx, config):
     (err, out) = rgwadmin(ctx, client, [
             'key', 'rm', '--uid', user1,
             '--access-key', access_key2,
-            ])
-    assert not err
+            ], check_status=True)
     assert len(out['keys']) == 1
     assert out['keys'][0]['access_key'] == access_key
     assert out['keys'][0]['secret_key'] == secret_key
@@ -431,16 +424,14 @@ def task(ctx, config):
     (err, out) = rgwadmin(ctx, client, [
             'subuser', 'create', '--subuser', subuser1,
             '--access', subuser_access
-            ])
-    assert not err
+            ], check_status=True)
 
     # TESTCASE 'add-swift-key','key','create','swift key','succeeds'
     (err, out) = rgwadmin(ctx, client, [
             'subuser', 'modify', '--subuser', subuser1,
             '--secret', swift_secret1,
             '--key-type', 'swift',
-            ])
-    assert not err
+            ], check_status=True)
 
     # TESTCASE 'subuser-perm-mask', 'subuser', 'info', 'test subuser perm mask durability', 'succeeds'
     (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1])
@@ -448,8 +439,7 @@ def task(ctx, config):
     assert out['subusers'][0]['permissions'] == subuser_perm
 
     # TESTCASE 'info-swift-key','user','info','after key addition','returns all keys'
-    (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1], check_status=True)
     assert len(out['swift_keys']) == 1
     assert out['swift_keys'][0]['user'] == subuser1
     assert out['swift_keys'][0]['secret_key'] == swift_secret1
@@ -459,12 +449,10 @@ def task(ctx, config):
             'subuser', 'create', '--subuser', subuser2,
             '--secret', swift_secret2,
             '--key-type', 'swift',
-            ])
-    assert not err
+            ], check_status=True)
 
     # TESTCASE 'info-swift-subuser','user','info','after key addition','returns all sub-users/keys'
-    (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1], check_status=True)
     assert len(out['swift_keys']) == 2
     assert out['swift_keys'][0]['user'] == subuser2 or out['swift_keys'][1]['user'] == subuser2
     assert out['swift_keys'][0]['secret_key'] == swift_secret2 or out['swift_keys'][1]['secret_key'] == swift_secret2
@@ -473,51 +461,45 @@ def task(ctx, config):
     (err, out) = rgwadmin(ctx, client, [
             'key', 'rm', '--subuser', subuser1,
             '--key-type', 'swift',
-            ])
-    assert not err
+            ], check_status=True)
     assert len(out['swift_keys']) == 1
 
     # TESTCASE 'rm-subuser','subuser','rm','subuser','success, subuser is removed'
     (err, out) = rgwadmin(ctx, client, [
             'subuser', 'rm', '--subuser', subuser1,
-            ])
-    assert not err
+            ], check_status=True)
     assert len(out['subusers']) == 1
 
     # TESTCASE 'rm-subuser-with-keys','subuser','rm','subuser','succeeds, second subser and key is removed'
     (err, out) = rgwadmin(ctx, client, [
             'subuser', 'rm', '--subuser', subuser2,
             '--key-type', 'swift', '--purge-keys',
-            ])
-    assert not err
+            ], check_status=True)
     assert len(out['swift_keys']) == 0
     assert len(out['subusers']) == 0
 
     # TESTCASE 'bucket-stats','bucket','stats','no session/buckets','succeeds, empty list'
-    (err, out) = rgwadmin(ctx, client, ['bucket', 'stats', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['bucket', 'stats', '--uid', user1]
+        check_status=True)
     assert len(out) == 0
 
     if multi_region_run:
         rgw_utils.radosgw_agent_sync_all(ctx)
 
     # TESTCASE 'bucket-stats2','bucket','stats','no buckets','succeeds, empty list'
-    (err, out) = rgwadmin(ctx, client, ['bucket', 'list', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['bucket', 'list', '--uid', user1], check_status=True)
     assert len(out) == 0
 
     # create a first bucket
     bucket = connection.create_bucket(bucket_name)
 
     # TESTCASE 'bucket-list','bucket','list','one bucket','succeeds, expected list'
-    (err, out) = rgwadmin(ctx, client, ['bucket', 'list', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['bucket', 'list', '--uid', user1], check_status=True)
     assert len(out) == 1
     assert out[0] == bucket_name
 
     # TESTCASE 'bucket-list-all','bucket','list','all buckets','succeeds, expected list'
-    (err, out) = rgwadmin(ctx, client, ['bucket', 'list'])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['bucket', 'list'], check_status=True)
     assert len(out) >= 1
     assert bucket_name in out;
 
@@ -540,14 +522,12 @@ def task(ctx, config):
    
     # TESTCASE 'bucket-stats3','bucket','stats','new empty bucket','succeeds, empty list'
     (err, out) = rgwadmin(ctx, client, [
-            'bucket', 'stats', '--bucket', bucket_name])
-    assert not err
+            'bucket', 'stats', '--bucket', bucket_name], check_status=True)
     assert out['owner'] == user1
     bucket_id = out['id']
 
     # TESTCASE 'bucket-stats4','bucket','stats','new empty bucket','succeeds, expected bucket ID'
-    (err, out) = rgwadmin(ctx, client, ['bucket', 'stats', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['bucket', 'stats', '--uid', user1], check_status=True)
     assert len(out) == 1
     assert out[0]['id'] == bucket_id    # does it return the same ID twice in a row?
 
@@ -557,8 +537,7 @@ def task(ctx, config):
 
     # TESTCASE 'bucket-stats5','bucket','stats','after creating key','succeeds, lists one non-empty object'
     (err, out) = rgwadmin(ctx, client, [
-            'bucket', 'stats', '--bucket', bucket_name])
-    assert not err
+            'bucket', 'stats', '--bucket', bucket_name], check_status=True)
     assert out['id'] == bucket_id
     assert out['usage']['rgw.main']['num_objects'] == 1
     assert out['usage']['rgw.main']['size_kb'] > 0
@@ -567,8 +546,9 @@ def task(ctx, config):
     key.delete()
 
     # TESTCASE 'bucket unlink', 'bucket', 'unlink', 'unlink bucket from user', 'fails', 'access denied error'
-    (err, out) = rgwadmin(ctx, client, ['bucket', 'unlink', '--uid', user1, '--bucket', bucket_name])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, 
+        ['bucket', 'unlink', '--uid', user1, '--bucket', bucket_name], 
+        check_status=True)
 
     # create a second user to link the bucket to
     (err, out) = rgwadmin(ctx, client, [
@@ -578,8 +558,8 @@ def task(ctx, config):
             '--access-key', access_key2,
             '--secret', secret_key2,
             '--max-buckets', '1',
-            ])
-    assert not err
+            ]
+            check_status=True)
 
     # try creating an object with the first user before the bucket is relinked
     denied = False
@@ -596,23 +576,24 @@ def task(ctx, config):
     key.delete()
 
     # link the bucket to another user
-    (err, out) = rgwadmin(ctx, client, ['bucket', 'link', '--uid', user2, '--bucket', bucket_name])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['bucket', 'link', '--uid', user2, '--bucket', bucket_name],
+        check_status=True)
 
     # try to remove user, should fail (has a linked bucket)
     (err, out) = rgwadmin(ctx, client, ['user', 'rm', '--uid', user2])
     assert err
 
     # TESTCASE 'bucket unlink', 'bucket', 'unlink', 'unlink bucket from user', 'succeeds, bucket unlinked'
-    (err, out) = rgwadmin(ctx, client, ['bucket', 'unlink', '--uid', user2, '--bucket', bucket_name])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['bucket', 'unlink', '--uid', user2, '--bucket', bucket_name],
+        check_status=True)
 
     # relink the bucket to the first user and delete the second user
-    (err, out) = rgwadmin(ctx, client, ['bucket', 'link', '--uid', user1, '--bucket', bucket_name])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, 
+        ['bucket', 'link', '--uid', user1, '--bucket', bucket_name],
+        check_status=True)
 
-    (err, out) = rgwadmin(ctx, client, ['user', 'rm', '--uid', user2])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['user', 'rm', '--uid', user2],
+        check_status=True)
 
     # TESTCASE 'object-rm', 'object', 'rm', 'remove object', 'succeeds, object is removed'
 
@@ -622,21 +603,20 @@ def task(ctx, config):
     key.set_contents_from_string(object_name)
 
     # now delete it
-    (err, out) = rgwadmin(ctx, client, ['object', 'rm', '--bucket', bucket_name, '--object', object_name])
-
-    assert not err
+    (err, out) = rgwadmin(ctx, client, 
+        ['object', 'rm', '--bucket', bucket_name, '--object', object_name],
+        check_status=True)
 
     # TESTCASE 'bucket-stats6','bucket','stats','after deleting key','succeeds, lists one no objects'
     (err, out) = rgwadmin(ctx, client, [
-            'bucket', 'stats', '--bucket', bucket_name])
-    assert not err
+            'bucket', 'stats', '--bucket', bucket_name],
+            check_status=True)
     assert out['id'] == bucket_id
     assert out['usage']['rgw.main']['num_objects'] == 0
 
     # list log objects
     # TESTCASE 'log-list','log','list','after activity','succeeds, lists one no objects'
-    (err, out) = rgwadmin(ctx, client, ['log', 'list'])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['log', 'list'], check_status=True)
     assert len(out) > 0
 
     for obj in out:
@@ -644,8 +624,8 @@ def task(ctx, config):
         if obj[:4] == 'meta' or obj[:4] == 'data':
             continue
 
-        (err, log) = rgwadmin(ctx, client, ['log', 'show', '--object', obj])
-        assert not err
+        (err, log) = rgwadmin(ctx, client, ['log', 'show', '--object', obj],
+            check_status=True)
         assert len(log) > 0
 
         # exempt bucket_name2 from checking as it was only used for multi-region tests
@@ -657,8 +637,8 @@ def task(ctx, config):
             assert entry['user'] == user1 or log['bucket'] == bucket_name + '5' or log['bucket'] == bucket_name2
 
         # TESTCASE 'log-rm','log','rm','delete log objects','succeeds'
-        (err, out) = rgwadmin(ctx, client, ['log', 'rm', '--object', obj])
-        assert not err
+        (err, out) = rgwadmin(ctx, client, ['log', 'rm', '--object', obj],
+            check_status=True)
 
     # TODO: show log by bucket+date
 
@@ -673,8 +653,7 @@ def task(ctx, config):
     assert time.time() - timestamp <= (20 * 60)
 
     # TESTCASE 'usage-show' 'usage' 'show' 'all usage' 'succeeds'
-    (err, out) = rgwadmin(ctx, client, ['usage', 'show'])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['usage', 'show'], check_status=True)
     assert len(out['entries']) > 0
     assert len(out['summary']) > 0
     user_summary = out['summary'][0]
@@ -682,8 +661,8 @@ def task(ctx, config):
     assert total['successful_ops'] > 0
 
     # TESTCASE 'usage-show2' 'usage' 'show' 'user usage' 'succeeds'
-    (err, out) = rgwadmin(ctx, client, ['usage', 'show', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['usage', 'show', '--uid', user1]
+        check_status=True)
     assert len(out['entries']) > 0
     assert len(out['summary']) > 0
     user_summary = out['summary'][0]
@@ -694,8 +673,8 @@ def task(ctx, config):
     # TESTCASE 'usage-show3' 'usage' 'show' 'user usage categories' 'succeeds'
     test_categories = ['create_bucket', 'put_obj', 'delete_obj', 'delete_bucket']
     for cat in test_categories:
-        (err, out) = rgwadmin(ctx, client, ['usage', 'show', '--uid', user1, '--categories', cat])
-        assert not err
+        (err, out) = rgwadmin(ctx, client, ['usage', 'show', '--uid', user1, '--categories', cat],
+            check_status=True)
         assert len(out['summary']) > 0
         user_summary = out['summary'][0]
         assert user_summary['user'] == user1
@@ -705,16 +684,16 @@ def task(ctx, config):
         assert entry['successful_ops'] > 0
 
     # TESTCASE 'usage-trim' 'usage' 'trim' 'user usage' 'succeeds, usage removed'
-    (err, out) = rgwadmin(ctx, client, ['usage', 'trim', '--uid', user1])
-    assert not err
-    (err, out) = rgwadmin(ctx, client, ['usage', 'show', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['usage', 'trim', '--uid', user1]
+        check_status=True)
+    (err, out) = rgwadmin(ctx, client, ['usage', 'show', '--uid', user1],
+        check_status=True)
     assert len(out['entries']) == 0
     assert len(out['summary']) == 0
 
     # TESTCASE 'user-suspend2','user','suspend','existing user','succeeds'
-    (err, out) = rgwadmin(ctx, client, ['user', 'suspend', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['user', 'suspend', '--uid', user1]
+        check_status=True)
 
     # TESTCASE 'user-suspend3','user','suspend','suspended user','cannot write objects'
     try:
@@ -724,8 +703,8 @@ def task(ctx, config):
         assert e.status == 403
 
     # TESTCASE 'user-renable2','user','enable','suspended user','succeeds'
-    (err, out) = rgwadmin(ctx, client, ['user', 'enable', '--uid', user1])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['user', 'enable', '--uid', user1]
+        check_status=True)
 
     # TESTCASE 'user-renable3','user','enable','reenabled user','can write objects'
     key = boto.s3.key.Key(bucket)
@@ -750,9 +729,7 @@ def task(ctx, config):
     assert len(out) > 0
 
     # TESTCASE 'gc-process', 'gc', 'process', 'manually collect garbage'
-    (err, out) = rgwadmin(ctx, client, ['gc', 'process'])
-
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['gc', 'process'], check_status=True)
 
     #confirm
     (err, out) = rgwadmin(ctx, client, ['gc', 'list'])
@@ -783,9 +760,9 @@ def task(ctx, config):
     # should be private already but guarantee it
     key.set_acl('private')
 
-    (err, out) = rgwadmin(ctx, client, ['policy', '--bucket', bucket.name, '--object', key.key])
-
-    assert not err
+    (err, out) = rgwadmin(ctx, client, 
+        ['policy', '--bucket', bucket.name, '--object', key.key], 
+        check_status=True)
 
     acl = key.get_xml_acl()
 
@@ -794,9 +771,9 @@ def task(ctx, config):
     # add another grantee by making the object public read
     key.set_acl('public-read')
 
-    (err, out) = rgwadmin(ctx, client, ['policy', '--bucket', bucket.name, '--object', key.key])
-
-    assert not err
+    (err, out) = rgwadmin(ctx, client, 
+        ['policy', '--bucket', bucket.name, '--object', key.key], 
+        check_status=True)
 
     acl = key.get_xml_acl()
     assert acl == out.strip('\n')
@@ -808,8 +785,9 @@ def task(ctx, config):
         key = boto.s3.key.Key(bucket)
         key.set_contents_from_string(key_name[i])
 
-    (err, out) = rgwadmin(ctx, client, ['bucket', 'rm', '--bucket', bucket_name, '--purge-objects'])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, 
+        ['bucket', 'rm', '--bucket', bucket_name, '--purge-objects'],
+        check_status=True)
 
     # TESTCASE 'caps-add', 'caps', 'add', 'add user cap', 'succeeds'
     caps='user=read'
@@ -834,8 +812,9 @@ def task(ctx, config):
     key = boto.s3.key.Key(bucket)
     key.set_contents_from_string('twelve')
 
-    (err, out) = rgwadmin(ctx, client, ['user', 'rm', '--uid', user1, '--purge-data' ])
-    assert not err
+    (err, out) = rgwadmin(ctx, client, 
+        ['user', 'rm', '--uid', user1, '--purge-data' ], 
+        check_status=True)
 
     # TESTCASE 'rm-user3','user','rm','deleted user','fails'
     (err, out) = rgwadmin(ctx, client, ['user', 'info', '--uid', user1])
@@ -860,8 +839,9 @@ def task(ctx, config):
 
     out['placement_pools'].append(rule)
 
-    (err, out) = rgwadmin(ctx, client, ['zone', 'set'], stdin=StringIO(json.dumps(out)))
-    assert not err
+    (err, out) = rgwadmin(ctx, client, ['zone', 'set'], 
+        stdin=StringIO(json.dumps(out)), 
+        check_status=True)
 
     (err, out) = rgwadmin(ctx, client, ['zone', 'get'])
     assert len(out) > 0