]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: allow already exist realm
authorOrit Wasserman <owasserm@redhat.com>
Wed, 13 Apr 2016 08:19:06 +0000 (10:19 +0200)
committerOrit Wasserman <owasserm@redhat.com>
Tue, 19 Apr 2016 10:39:07 +0000 (12:39 +0200)
Signed-off-by: Orit Wasserman <owasserm@redhat.com>
tasks/rgw.py

index 6576b7211e1c1ed3f916d5fc83ad9557f7517a3f..4e8fbe109e2063e732f29e7447f0628ddd1cb78b 100644 (file)
@@ -7,6 +7,7 @@ import json
 import logging
 import os
 import time
+import errno
 import util.rgw as rgw_utils
 
 from cStringIO import StringIO
@@ -879,9 +880,12 @@ def configure_regions_and_zones(ctx, config, regions, role_endpoints, realm):
     log.debug('master client = %r', master_client)
     log.debug('config %r ', config)
 
-    rgwadmin(ctx, master_client,
-             cmd=['realm', 'create', '--rgw-realm', realm, '--default'],
-             check_status=True)
+    (ret, out)=rgwadmin(ctx, master_client,
+                        cmd=['realm', 'create', '--rgw-realm', realm, '--default'])
+    log.debug('realm create ret %r exists %r', -ret, errno.EEXIST)
+    assert ret == 0 or ret != -errno.EEXIST
+    if ret is -errno.EEXIST:
+        log.debug('realm %r exists', realm)
 
     for client in config.iterkeys():
         for role, (zonegroup, zone, zone_info, user_info) in role_zones.iteritems():