From: Pere Diaz Bou Date: Wed, 1 Jun 2022 10:44:35 +0000 (+0200) Subject: mgr/dashboard: add rbd primary info X-Git-Tag: v18.0.0~758^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F46479%2Fhead;p=ceph.git mgr/dashboard: add rbd primary info Signed-off-by: Pere Diaz Bou --- diff --git a/qa/tasks/mgr/dashboard/test_rbd.py b/qa/tasks/mgr/dashboard/test_rbd.py index b8df472a692..1f98a93e058 100644 --- a/qa/tasks/mgr/dashboard/test_rbd.py +++ b/qa/tasks/mgr/dashboard/test_rbd.py @@ -211,6 +211,7 @@ class RbdTest(DashboardTestCase): "name": "img1", "pool_name": "rbd", "features": 61, + "primary": true, "features_name": ["deep-flatten", "exclusive-lock", "fast-diff", "layering", "object-map"] } @@ -227,6 +228,7 @@ class RbdTest(DashboardTestCase): 'image_format': JLeaf(int), 'pool_name': JLeaf(str), 'namespace': JLeaf(str, none=True), + 'primary': JLeaf(bool, none=True), 'features': JLeaf(int), 'features_name': JList(JLeaf(str)), 'stripe_count': JLeaf(int, none=True), diff --git a/src/pybind/mgr/dashboard/services/rbd.py b/src/pybind/mgr/dashboard/services/rbd.py index 2c255a4fcb6..22e64eecffa 100644 --- a/src/pybind/mgr/dashboard/services/rbd.py +++ b/src/pybind/mgr/dashboard/services/rbd.py @@ -250,6 +250,12 @@ class RbdService(object): stat = img.stat() stat['name'] = image_name + + mirror_info = img.mirror_image_get_info() + stat['primary'] = None + if mirror_info['state'] == rbd.RBD_MIRROR_IMAGE_ENABLED: + stat['primary'] = mirror_info['primary'] + if img.old_format(): stat['unique_id'] = get_image_spec(pool_name, namespace, stat['block_name_prefix']) stat['id'] = stat['unique_id']