]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
qa: check each fs for health 51030/head
authorPatrick Donnelly <pdonnell@redhat.com>
Tue, 11 Apr 2023 14:16:53 +0000 (10:16 -0400)
committerPatrick Donnelly <pdonnell@redhat.com>
Tue, 11 Apr 2023 14:16:53 +0000 (10:16 -0400)
Fixes: https://tracker.ceph.com/issues/59425
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
qa/tasks/ceph.py
qa/tasks/cephfs/filesystem.py

index 35b52fbf552c3f449e7bda02f3cf367c0b6e014e..105362d48f376aa0373d62a5ca4cebbbc18c0f43 100644 (file)
@@ -1495,9 +1495,8 @@ def healthy(ctx, config):
 
     if ctx.cluster.only(teuthology.is_type('mds', cluster_name)).remotes:
         # Some MDSs exist, wait for them to be healthy
-        ceph_fs = Filesystem(ctx) # TODO: make Filesystem cluster-aware
-        ceph_fs.wait_for_daemons(timeout=300)
-
+        for fs in Filesystem.get_all_fs(ctx):
+            fs.wait_for_daemons(timeout=300)
 
 def wait_for_mon_quorum(ctx, config):
     """
index 20dd997cbd06c068d2468d395d6e258a39389503..af7d802098e26acf28f3fd90ad801380f771b6e1 100644 (file)
@@ -492,6 +492,17 @@ class MDSCluster(CephCluster):
 
 
 class Filesystem(MDSCluster):
+
+    """
+    Generator for all Filesystems in the cluster.
+    """
+    @classmethod
+    def get_all_fs(cls, ctx):
+        mdsc = MDSCluster(ctx)
+        status = mdsc.status()
+        for fs in status.get_filesystems():
+            yield cls(ctx, fscid=fs['id'])
+
     """
     This object is for driving a CephFS filesystem.  The MDS daemons driven by
     MDSCluster may be shared with other Filesystems.