def __init__(self, manager=None, user_api=None, network_api=None, image_api=None, group_api=None, host_api=None): if not manager: self.manager = VMManager() else: self.manager = manager if not user_api: self.user_api = UserAPI() else: self.user_api = user_api if not network_api: self.network_api = NetworkAPI() else: self.network_api = network_api if not image_api: self.image_api = ImageAPI() else: self.image_api = image_api if not group_api: self.group_api = GroupAPI() else: self.group_api = group_api if not host_api: self.host_api = HostAPI() else: self.host_api = host_api
def get_list(args): '''获取镜像列表''' ret_list = [] storage_api = StorageAPI() image_api = ImageAPI() cephpool = storage_api.get_pool_by_id(args['ceph_id']) if not cephpool.managed_by(args['req_user']): return {'res': False, 'err': ERR_AUTH_PERM} # if 'enable' in args: # enable = args['enable'] # else: # enable = None # 非得改接口…… enable = True image_list = image_api.get_image_list_by_pool_id(args['ceph_id'], enable) for image in image_list: ret_list.append({ 'id': image.id, 'ceph_id': image.cephpool_id, 'name': image.name, 'version': image.version, 'type': image.type_name, 'order': image.order }) return {'res': True, 'list': ret_list}
def get(args): '''获取镜像信息''' info = {} image_api = ImageAPI() image = image_api.get_image_by_id(args['image_id']) if not image.managed_by(args['req_user']): return {'res': False, 'err': ERR_AUTH_PERM} info = { 'id': image.id, 'ceph_id': image.cephpool_id, 'name': image.name, 'version': image.version, 'snap': image.snap, 'type': image.type_name, 'desc': image.desc } return {'res': True, 'info': info}
def get_type_list(args=None): image_api = ImageAPI() ret_list = image_api.get_image_type_list() return {'res': True, 'list': ret_list}