]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/test_orchestrator: fix service filtering when using dummy data 34023/head
authorKiefer Chang <kiefer.chang@suse.com>
Wed, 18 Mar 2020 12:03:59 +0000 (20:03 +0800)
committerKiefer Chang <kiefer.chang@suse.com>
Wed, 18 Mar 2020 12:10:36 +0000 (20:10 +0800)
Signed-off-by: Kiefer Chang <kiefer.chang@suse.com>
src/pybind/mgr/test_orchestrator/module.py

index 10fa8482e6ba66a8746d90827f104deec7160dfa..db751cb84dd77245d0f744cf2b6391b6d43823fb 100644 (file)
@@ -197,17 +197,23 @@ class TestOrchestrator(MgrModule, orchestrator.Orchestrator):
         if self._services:
             # Dummy data
             services = self._services
+            # Can't deduce service type from dummy data (no daemons).
+            # Assume service_type is service_name.
+            if service_type is not None:
+                services = list(filter(lambda s: s.service_name == service_type, services))
         else:
             # Deduce services from daemons running on localhost
             all_daemons = self._get_ceph_daemons()
             services = []
             for daemon_type, daemons in itertools.groupby(all_daemons, key=lambda d: d.daemon_type):
+                if service_type is not None and service_type != daemon_type:
+                    continue
                 daemon_size = len(list(daemons))
                 services.append(orchestrator.ServiceDescription(
                     service_name=daemon_type, size=daemon_size, running=daemon_size))
         
         def _filter_func(svc):
-            if service_type is not None and service_type != svc.service_name:
+            if service_name is not None and service_name != svc.service_name:
                 return False
             return True