]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/dashboard: KeyError on dashboard reload 32233/head
authorPatrick Seidensal <pseidensal@suse.com>
Thu, 7 Nov 2019 15:57:26 +0000 (15:57 +0000)
committerTatjana Dehler <tdehler@suse.com>
Wed, 15 Jan 2020 16:13:01 +0000 (17:13 +0100)
When reloading the dashboard using `ceph mgr module disable/enable
dashbaord`, the error is thrown shortly after the dashboard module has
been reactivated, because `dashboard` is not yet available in
`services`. A second attempt works.

Fixes: https://tracker.ceph.com/issues/42684
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
(cherry picked from commit 808f0bf5e0adf4abda192758edbccdee3d4113d2)

src/pybind/mgr/dashboard/controllers/summary.py

index 0b2d51e52747366dca08873b16d3ff9e861cfda6..09d69ecfb027e0778138c06cb9194c8ee4963e99 100644 (file)
@@ -63,9 +63,9 @@ class Summary(BaseController):
         return result
 
     def _get_host(self):
-        mgr_map = mgr.get('mgr_map')
-        services = mgr_map['services']
-        return services['dashboard']
+        # type: () -> str
+        services = mgr.get('mgr_map')['services']
+        return services['dashboard'] if 'dashboard' in services else ''
 
     @Endpoint()
     def __call__(self):