def copy_files(request): if request.method == "POST": error = None device = request.POST.get("device") if not device: raise Http404() try: manager = StorageDeviceManager(device) manager.mount() except (MountError, OSError), e: error = e messages.error(request, "Impossível montar dispositivo. Sistema de arquivo inadequado") return redirect('nimbus.system.views.select_storage') sizes = [ getsize( dev) for dev in offsite.get_all_bacula_volumes() ] required_size = sum( sizes ) if required_size < manager.available_size: systemprocesses.min_priority_job("Nimbus upload volumes", upload_volumes_worker, manager) messages.success(request, u"O processo foi iniciado com sucesso.") return redirect('nimbus.offsite.views.list_uploadrequest') else: required_size = utils.bytes_to_mb(required_size) available_size = utils.bytes_to_mb(manager.available_size) manager.umount() error_msg = u"Espaço necessário é de %.3fMB, somente %.3fMB disponível em %s" %\ (required_size, available_size, device) messages.error(request, error_msg) return redirect('nimbus.system.views.select_storage')
def copy_files(request): if request.method == "POST": error = None device = request.POST.get("device") if not device: raise Http404() try: manager = StorageDeviceManager(device) manager.mount() except (MountError, OSError), e: error = e messages.error( request, "Impossível montar dispositivo. Sistema de arquivo inadequado") return redirect('nimbus.system.views.select_storage') sizes = [getsize(dev) for dev in offsite.get_all_bacula_volumes()] required_size = sum(sizes) if required_size < manager.available_size: systemprocesses.min_priority_job("Nimbus upload volumes", upload_volumes_worker, manager) messages.success(request, u"O processo foi iniciado com sucesso.") return redirect('nimbus.offsite.views.list_uploadrequest') else: required_size = utils.bytes_to_mb(required_size) available_size = utils.bytes_to_mb(manager.available_size) manager.umount() error_msg = u"Espaço necessário é de %.3fMB, somente %.3fMB disponível em %s" %\ (required_size, available_size, device) messages.error(request, error_msg) return redirect('nimbus.system.views.select_storage')
def detail(request): offsite = Offsite.get_instance() uploads = list(LocalUploadRequest.objects.all()) + list( RemoteUploadRequest.objects.all()) content = [] for upload in uploads: content.append({ 'type': 'ok', 'date': upload.last_attempt or upload.created_at, 'label': upload.volume.filename, 'message': "%.2f MB" % utils.bytes_to_mb(upload.volume.size) }) transferencias_em_execucao = [{ 'title': u'Transferências em execução', 'content': content }] if offsite.active: graphic = Graphics() graph_block = graphic.data_to_template()[0] else: ocupacao_offsite = 0.0 messages.error(request, "Offsite desativado") return render_to_response(request, "detail.html", locals())
def detail(request): offsite = Offsite.get_instance() uploads = list(LocalUploadRequest.objects.all()) + list(RemoteUploadRequest.objects.all()) content = [] for upload in uploads: content.append({'type' : 'ok', 'date' : upload.last_attempt or upload.created_at, 'label' : upload.volume.filename, 'message' : "%.2f MB" % utils.bytes_to_mb(upload.volume.size) }) transferencias_em_execucao = [{'title': u'Transferências em execução', 'content': content}] if offsite.active: graphic = Graphics() graph_block = graphic.data_to_template()[0] else: ocupacao_offsite = 0.0 messages.error(request, "Offsite desativado") return render_to_response(request, "detail.html", locals())