]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
ceph-create-keys: wait 10 minutes to get or create the bootstrap key, not forever 11749/head
authorAlfredo Deza <adeza@redhat.com>
Wed, 2 Nov 2016 16:28:49 +0000 (12:28 -0400)
committerAlfredo Deza <adeza@redhat.com>
Wed, 2 Nov 2016 16:30:30 +0000 (12:30 -0400)
Signed-off-by: Alfredo Deza <adeza@redhat.com>
src/ceph-create-keys

index ea19857ae5bc79620b16e69929bc85e13347936f..d1dce4209b46156b391b202ff5b4843caa45f4bd 100755 (executable)
@@ -74,7 +74,7 @@ def wait_for_quorum(cluster, mon_id):
         break
 
     if wait_count == 0:
-        LOG.error("ceph-mon was not able to join quorum within 10 minutes")
+        raise SystemExit("ceph-mon was not able to join quorum within 10 minutes")
 
 
 def get_key(cluster, mon_id):
@@ -189,7 +189,8 @@ def bootstrap_key(cluster, type_):
         os.chmod(pathdir, 0770)
         os.chown(pathdir, get_ceph_uid(), get_ceph_gid())
 
-    while True:
+    wait_count = 600  # 10 minutes
+    while wait_count > 0:
         try:
             with file(tmp, 'w') as f:
                 os.fchmod(f.fileno(), 0600)
@@ -206,6 +207,7 @@ def bootstrap_key(cluster, type_):
                 else:
                     LOG.info('Cannot get or create bootstrap key for %s', type_)
                     time.sleep(1)
+                    wait_count -= 1
                     continue
 
             os.rename(tmp, path)
@@ -218,6 +220,8 @@ def bootstrap_key(cluster, type_):
                     pass
                 else:
                     raise
+    if wait_count == 0:
+        raise SystemExit("Could not get or create %s bootstrap key after 10 minutes" % type_)
 
 
 def parse_args():