]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
qa/tasks/ceph_manager: wait for osd to start after objectstore-tool sequence
authorSage Weil <sage@redhat.com>
Thu, 20 Jul 2017 15:41:36 +0000 (11:41 -0400)
committerNathan Cutler <ncutler@suse.com>
Sun, 28 Jan 2018 00:28:27 +0000 (01:28 +0100)
Fixes: http://tracker.ceph.com/issues/20705
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 583a38bca293495679d4372f7470e4e1f2a930fb)

Conflicts:
    qa/tasks/ceph_manager.py (bring in a053ce091e1aa910a1d01aec489203500e67efe5
        which has to be cherry-picked manually anyway, because it pre-dates the
        ceph-qa-suite move)

qa/tasks/ceph_manager.py

index 5f2f61885ba5ea0bdfaaa7136e2e8c2b4378e194..62488dde361ebc29dfa1c780d9d6741885d7a8f6 100644 (file)
@@ -766,6 +766,7 @@ class ObjectStoreTool:
         self.pool = pool
         self.osd = kwargs.get('osd', None)
         self.object_name = kwargs.get('object_name', None)
+        self.do_revive = kwargs.get('do_revive', True)
         if self.osd and self.pool and self.object_name:
             if self.osd == "primary":
                 self.osd = self.manager.get_object_primary(self.pool,
@@ -818,7 +819,9 @@ class ObjectStoreTool:
                 error = proc.stdout.getvalue() + " " + proc.stderr.getvalue()
                 raise Exception(error)
         finally:
-            self.manager.revive_osd(self.osd)
+            if self.do_revive:
+                self.manager.revive_osd(self.osd)
+                self.manager.wait_till_osd_is_up(self.osd, 300)
 
 
 class CephManager: