def _clients(self, fs_id): cephfs_clients = global_instance().cephfs_clients.get(fs_id, None) if cephfs_clients is None: cephfs_clients = CephFSClients(global_instance(), fs_id) global_instance().cephfs_clients[fs_id] = cephfs_clients try: status, clients = cephfs_clients.get() except AttributeError: raise cherrypy.HTTPError(404, "No filesystem with id {0}".format(fs_id)) if clients is None: raise cherrypy.HTTPError(404, "No filesystem with id {0}".format(fs_id)) #TODO do something sensible with status # Decorate the metadata with some fields that will be # indepdendent of whether it's a kernel or userspace # client, so that the javascript doesn't have to grok that. for client in clients: if "ceph_version" in client['client_metadata']: client['type'] = "userspace" client['version'] = client['client_metadata']['ceph_version'] client['hostname'] = client['client_metadata']['hostname'] elif "kernel_version" in client['client_metadata']: client['type'] = "kernel" client['version'] = client['client_metadata']['kernel_version'] client['hostname'] = client['client_metadata']['hostname'] else: client['type'] = "unknown" client['version'] = "" client['hostname'] = "" return clients
def _clients(self, fs_id): cephfs_clients = global_instance().cephfs_clients.get(fs_id, None) if cephfs_clients is None: cephfs_clients = CephFSClients(global_instance(), fs_id) global_instance().cephfs_clients[fs_id] = cephfs_clients status, clients = cephfs_clients.get() #TODO do something sensible with status # Decorate the metadata with some fields that will be # indepdendent of whether it's a kernel or userspace # client, so that the javascript doesn't have to grok that. for client in clients: if "ceph_version" in client['client_metadata']: client['type'] = "userspace" client['version'] = client['client_metadata']['ceph_version'] client['hostname'] = client['client_metadata']['hostname'] elif "kernel_version" in client['client_metadata']: client['type'] = "kernel" client['version'] = client['client_metadata']['kernel_version'] client['hostname'] = client['client_metadata']['hostname'] else: client['type'] = "unknown" client['version'] = "" client['hostname'] = "" return clients