"perm": "rw"},
{"cmd": "progress off",
"desc": "Disable progress tracking",
- "perm": "rw"}
-
+ "perm": "rw"},
+ {"cmd": "progress test intermodule call",
+ "desc": "request spec from rbd_suport module DNM",
+ "perm": "r"}
]
MODULE_OPTIONS = [
self.off()
self.clear()
return 0, "", "progress disabled"
+ elif cmd['prefix'] == "progress test intermodule call":
+ ret = self.remote('rbd_support', 'test_intermodule_call')
+ try:
+ ret.validate()
+ except Exception as e:
+ self.getLogger().error("validate failed {}".format(e))
+ raise e
+ return 0, "", "worked"
else:
raise NotImplementedError(cmd['prefix'])
sort_by_name = sort_by.name if sort_by else OSD_PERF_QUERY_COUNTERS[0]
return self.perf.get_perf_stats(pool_spec, sort_by_name)
+ @CLIReadCommand('rbd test_intermodule_call')
+ @with_latest_osdmap
+ def test_intermodule_call(self):
+ with self.perf.lock:
+ pool = 3
+ group = 4
+ placement = "asdf"
+ from ceph.deployment.service_spec import NvmeofServiceSpec, ServiceSpec, PlacementSpec
+ ret = NvmeofServiceSpec(
+ service_id=f'{pool}.{group}' if group else pool,
+ pool=pool,
+ group=group,
+ placement=PlacementSpec.from_string(placement),
+ )
+ #ret.validate()
+ return ret
+
@CLIReadCommand('rbd perf image counters')
@with_latest_osdmap
def perf_image_counters(self,