def is_lun_io_ready(lun): utils.update_res_without_poll(lun) if not lun.existed: return False lun_state = lun.state if lun_state == common.LUNState.INITIALIZING: return False elif lun_state in [common.LUNState.READY, common.LUNState.FAULTED]: return lun.operation == 'None' else: # Quick exit wait_until when the lun is other state to avoid # long-time timeout. msg = (_('Volume %(name)s was created in VNX, ' 'but in %(state)s state.') % { 'name': lun.name, 'state': lun_state}) raise exception.VolumeBackendAPIException(data=msg)
def is_lun_io_ready(lun): utils.update_res_without_poll(lun) if not lun.existed: return False lun_state = lun.state if lun_state == common.LUNState.INITIALIZING: return False elif lun_state in [common.LUNState.READY, common.LUNState.FAULTED]: return lun.operation == 'None' else: # Quick exit wait_until when the lun is other state to avoid # long-time timeout. msg = (_('Volume %(name)s was created in VNX, ' 'but in %(state)s state.') % { 'name': lun.name, 'state': lun_state}) raise exception.VolumeBackendAPIException(data=msg)
def is_mirror_synced(mirror): utils.update_res_without_poll(mirror) return (mirror.secondary_image.state == storops.VNXMirrorImageState.SYNCHRONIZED)
def is_lun_expanded(lun, new_size): utils.update_res_without_poll(lun) return new_size == lun.total_capacity_gb
def get_pool_name(self, lun_name): lun = self.get_lun(name=lun_name) utils.update_res_without_poll(lun) return lun.pool_name
def is_lun_ops_ready(lun): utils.update_res_without_poll(lun) return 'None' == lun.operation
def is_object_existed(vnx_obj): utils.update_res_without_poll(vnx_obj) return vnx_obj.existed
def is_mirror_synced(mirror): utils.update_res_without_poll(mirror) return ( mirror.secondary_image.state == storops.VNXMirrorImageState.SYNCHRONIZED)
def is_lun_expanded(lun, new_size): utils.update_res_without_poll(lun) return new_size == lun.total_capacity_gb
def get_pool_name(self, lun_name): lun = self.get_lun(name=lun_name) utils.update_res_without_poll(lun) return lun.pool_name
def is_lun_ops_ready(lun): utils.update_res_without_poll(lun) return 'None' == lun.operation
def is_object_existed(vnx_obj): utils.update_res_without_poll(vnx_obj) return vnx_obj.existed