diff --git a/scripts/spdkcli/ui_node.py b/scripts/spdkcli/ui_node.py index 528482680..c1c683f90 100644 --- a/scripts/spdkcli/ui_node.py +++ b/scripts/spdkcli/ui_node.py @@ -56,6 +56,7 @@ class UIBdevs(UINode): UIErrorBdev(self) UISplitBdev(self) UIPmemBdev(self) + UIRbdBdev(self) def ui_command_delete(self, name): """ @@ -374,6 +375,22 @@ class UIPmemBdev(UIBdev): self.refresh() +class UIRbdBdev(UIBdev): + def __init__(self, parent): + UIBdev.__init__(self, "Rbd", parent) + + def ui_command_create(self, pool_name, rbd_name, block_size, name=None): + block_size = self.ui_eval_param(block_size, "number", None) + + ret_name = self.get_root().create_rbd_bdev(pool_name=pool_name, + rbd_name=rbd_name, + block_size=block_size, + name=name) + self.shell.log.info(ret_name) + self.get_root().refresh() + self.refresh() + + class UIBdevObj(UINode): def __init__(self, bdev, parent): self.bdev = bdev diff --git a/scripts/spdkcli/ui_root.py b/scripts/spdkcli/ui_root.py index 2b56c8be0..9379ee971 100644 --- a/scripts/spdkcli/ui_root.py +++ b/scripts/spdkcli/ui_root.py @@ -107,6 +107,10 @@ class UIRoot(UINode): response = rpc.bdev.construct_pmem_bdev(self.client, **kwargs) return response + def create_rbd_bdev(self, **kwargs): + response = rpc.bdev.construct_rbd_bdev(self.client, **kwargs) + return response + class Bdev(object): def __init__(self, bdev_info):