]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/dashboard: Add RBD default features REST API endpoint
authorRicardo Marques <rimarques@suse.com>
Mon, 23 Apr 2018 21:15:48 +0000 (22:15 +0100)
committerRicardo Marques <rimarques@suse.com>
Tue, 24 Apr 2018 15:50:37 +0000 (16:50 +0100)
Signed-off-by: Ricardo Marques <rimarques@suse.com>
qa/tasks/mgr/dashboard/test_rbd.py
src/pybind/mgr/dashboard/controllers/rbd.py

index 1d5164b6ad3dfcfa3db2906ac6b9597e3c40cb7d..85ffa01a47c2af873cb6521016cffd34c45242bc 100644 (file)
@@ -537,3 +537,9 @@ class RbdTest(DashboardTestCase):
 
         self.remove_image('rbd_iscsi', 'img1_snapf_clone')
         self.assertStatus(204)
+
+    def test_default_features(self):
+        default_features = self._get('/api/block/image/default_features')
+        self.assertEqual(default_features, ['deep-flatten', 'exclusive-lock',
+                                             'fast-diff', 'layering',
+                                             'object-map'])
index 1642b3b6bc75c12be1bdb3aee82c02b9dffc6459..8fa5abca18a86a5596ce06061d4c86e670f39bd8 100644 (file)
@@ -361,6 +361,11 @@ class Rbd(RESTController):
 
         return _rbd_image_call(pool_name, image_name, _flatten)
 
+    @RESTController.collection(['GET'])
+    def default_features(self):
+        rbd_default_features = mgr.get('config')['rbd_default_features']
+        return _format_bitmask(int(rbd_default_features))
+
 
 @ApiController('block/image/:pool_name/:image_name/snap')
 @AuthRequired()