]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/ssh: fix remove_osds 31952/head
authorSage Weil <sage@redhat.com>
Mon, 2 Dec 2019 21:06:42 +0000 (15:06 -0600)
committerSage Weil <sage@redhat.com>
Mon, 2 Dec 2019 21:06:42 +0000 (15:06 -0600)
Broken by the new completions

Signed-off-by: Sage Weil <sage@redhat.com>
src/pybind/mgr/ssh/module.py

index 9975f7fd111bf2069b376fdf9b2081c8f4c1f8c7..7676eb1a62671df5dce362042d22796529072ad2 100644 (file)
@@ -971,11 +971,12 @@ class SSHOrchestrator(MgrModule, orchestrator.Orchestrator):
         return self.get_hosts().then(lambda hosts: self._create_osd(hosts, drive_group))
 
     def remove_osds(self, name):
-        daemons = self._get_services('osd', service_id=name)
-        args = [('osd.%s' % d.service_instance, d.nodename) for d in daemons]
-        if not args:
-            raise OrchestratorError('Unable to find osd.%s' % name)
-        return self._remove_daemon(args)
+        def _search(daemons):
+            args = [('osd.%s' % d.service_instance, d.nodename) for d in daemons]
+            if not args:
+                raise OrchestratorError('Unable to find osd.%s' % name)
+            return self._remove_daemon(args)
+        return self._get_services('osd', service_id=name).then(_search)
 
     def _create_daemon(self, daemon_type, daemon_id, host, keyring,
                        extra_args=[]):