]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
thrasher: Can't test ceph-objectstore-tool if nodes turned off (powercycle)
authorDavid Zafman <dzafman@redhat.com>
Tue, 9 Jun 2015 21:11:46 +0000 (14:11 -0700)
committerDavid Zafman <dzafman@redhat.com>
Fri, 19 Feb 2016 00:21:56 +0000 (16:21 -0800)
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit b255db820ffd1d3e1253a9a60c7192696c226490)

tasks/ceph_manager.py

index cf02cfe4b6f707f7f84d0bfda108f22fb3c752fd..b90ec249d2e33fd20133c4590e9863c9fe96c1f3 100644 (file)
@@ -133,16 +133,20 @@ class Thrasher:
             manager.raw_cluster_cmd('--', 'mon', 'tell', '*', 'injectargs',
                                     '--mon-osd-down-out-interval 0')
         self.thread = gevent.spawn(self.do_thrash)
-        if self.cmd_exists_on_osds("ceph-objectstore-tool"):
+        if self.config.get('powercycle') or not self.cmd_exists_on_osds("ceph-objectstore-tool"):
+            self.ceph_objectstore_tool = False
+            self.test_rm_past_intervals = False
+            if self.config.get('powercycle'):
+                self.log("Unable to test ceph-objectstore-tool, "
+                         "powercycle testing")
+            else:
+                self.log("Unable to test ceph-objectstore-tool, "
+                         "not available on all OSD nodes")
+        else:
             self.ceph_objectstore_tool = \
                 self.config.get('ceph_objectstore_tool', True)
             self.test_rm_past_intervals = \
                 self.config.get('test_rm_past_intervals', True)
-        else:
-            self.ceph_objectstore_tool = False
-            self.test_rm_past_intervals = False
-            self.log("Unable to test ceph-objectstore-tool, "
-                     "not available on all OSD nodes")
 
     def cmd_exists_on_osds(self, cmd):
         allremotes = self.ceph_manager.ctx.cluster.only(\