From: Kefu Chai Date: Tue, 5 Sep 2017 08:00:59 +0000 (+0800) Subject: ceph: extract ids_by_service() so it can be reused X-Git-Tag: v13.0.1~1027^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=25639f66910aa8a188d5b4b8fff8803e169da62a;p=ceph.git ceph: extract ids_by_service() so it can be reused Signed-off-by: Kefu Chai --- diff --git a/src/ceph.in b/src/ceph.in index bb2516c788f9..adb11c39b2ae 100755 --- a/src/ceph.in +++ b/src/ceph.in @@ -199,6 +199,14 @@ def mgrids(): return l +def ids_by_service(service): + ids = {"mon": monids, + "osd": osdids, + "mds": mdsids, + "mgr": mgrids} + return ids[service]() + + def validate_target(target): """ this function will return true iff target is a correct @@ -211,16 +219,9 @@ def validate_target(target): if len(target) == 2: # for case "service.id" service_name, service_id = target[0], target[1] - exist_ids = [] - if service_name == "mon": - exist_ids = monids() - elif service_name == "osd": - exist_ids = osdids() - elif service_name == "mds": - exist_ids = mdsids() - elif service_name == "mgr": - exist_ids = mgrids() - else: + try: + exist_ids = ids_by_service(service_name) + except KeyError: print('WARN: {0} is not a legal service name, should be one of mon/osd/mds/mgr'.format(service_name), file=sys.stderr) return False