]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
Merge pull request #64363 from Hezko/nvmeof-cli-aviv-feedback main
authorafreen23 <afreen23.git@gmail.com>
Fri, 18 Jul 2025 01:04:34 +0000 (06:34 +0530)
committerGitHub <noreply@github.com>
Fri, 18 Jul 2025 01:04:34 +0000 (06:34 +0530)
mgr/dashboard: nvmeof cli feedback fixes

Reviewed-by: Afreen Misbah <afreen@ibm.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
1  2 
src/pybind/mgr/dashboard/controllers/nvmeof.py
src/pybind/mgr/dashboard/services/nvmeof_cli.py
src/pybind/mgr/dashboard/tests/test_nvmeof_cli.py

index 64d53c761b754829ccd631f11731d98307105e9d,22847d672a35c57ab6ef96427af29a41d507ce3e..7285b118783bd9fe13a11234c092b27788408224
@@@ -470,52 -489,10 +489,53 @@@ else
                  )
              )
  
 +        @NvmeofCLICommand("nvmeof ns add", model.NamespaceCreation)
 +        @convert_to_model(model.NamespaceCreation)
 +        @handle_nvmeof_error
 +        def create_cli(
 +            self,
 +            nqn: str,
 +            rbd_image_name: str,
 +            rbd_pool: str = "rbd",
 +            create_image: Optional[bool] = False,
 +            size: Optional[str] = None,
 +            rbd_image_size: Optional[str] = None,
 +            trash_image: Optional[bool] = False,
 +            block_size: int = 512,
 +            load_balancing_group: Optional[int] = None,
 +            force: Optional[bool] = False,
 +            no_auto_visible: Optional[bool] = False,
 +            disable_auto_resize: Optional[bool] = False,
 +            read_only: Optional[bool] = False,
 +            gw_group: Optional[str] = None,
 +            traddr: Optional[str] = None,
 +        ):
 +            size_b = rbd_image_size_b = None
 +            if size:
 +                size_b = convert_to_bytes(size, default_unit='MB')
 +            if rbd_image_size:
 +                rbd_image_size_b = convert_to_bytes(rbd_image_size, default_unit='MB')
 +            return NVMeoFClient(gw_group=gw_group, traddr=traddr).stub.namespace_add(
 +                NVMeoFClient.pb2.namespace_add_req(
 +                    subsystem_nqn=nqn,
 +                    rbd_image_name=rbd_image_name,
 +                    rbd_pool_name=rbd_pool,
 +                    block_size=block_size,
 +                    create_image=create_image,
 +                    size=rbd_image_size_b or size_b,
 +                    trash_image=trash_image,
 +                    anagrpid=load_balancing_group,
 +                    force=force,
 +                    no_auto_visible=no_auto_visible,
 +                    disable_auto_resize=disable_auto_resize,
 +                    read_only=read_only
 +                )
 +            )
 +
          @ReadPermission
          @Endpoint('PUT', '{nsid}/set_qos')
-         @NvmeofCLICommand("nvmeof ns set_qos", model=model.RequestStatus)
+         @NvmeofCLICommand(
+             "nvmeof namespace set_qos", model=model.RequestStatus, alias="nvmeof ns set_qos")
          @EndpointDoc(
              "set QOS for specified NVMeoF namespace",
              parameters={
                  )
              )
  
 +        @NvmeofCLICommand("nvmeof ns resize", model=model.RequestStatus)
 +        @convert_to_model(model.RequestStatus)
 +        @handle_nvmeof_error
 +        def resize_cli(
 +            self,
 +            nqn: str,
 +            nsid: str,
 +            rbd_image_size: str,
 +            gw_group: Optional[str] = None,
 +            traddr: Optional[str] = None
 +        ):
 +            if rbd_image_size:
 +                rbd_image_size_b = convert_to_bytes(rbd_image_size, default_unit='MB')
 +            mib = 1024 * 1024
 +            rbd_image_size_mb = rbd_image_size_b // mib
 +
 +            return NVMeoFClient(gw_group=gw_group, traddr=traddr).stub.namespace_resize(
 +                NVMeoFClient.pb2.namespace_resize_req(
 +                    subsystem_nqn=nqn, nsid=int(nsid), new_size=rbd_image_size_mb
 +                )
 +            )
 +
          @ReadPermission
          @Endpoint('PUT', '{nsid}/add_host')
-         @NvmeofCLICommand("nvmeof ns add_host", model=model.RequestStatus)
+         @NvmeofCLICommand(
+             "nvmeof namespace add_host", model=model.RequestStatus, alias="nvmeof ns add_host"
+         )
          @EndpointDoc(
              "Adds a host to the specified NVMeoF namespace",
              parameters={