def import_workflow(request): workflow = Workflow.objects.new_workflow(request.user) if request.method == 'POST': workflow_form = ImportWorkflowForm(request.POST, request.FILES, instance=workflow) if workflow_form.is_valid(): if workflow_form.cleaned_data.get('resource_archive'): # Upload resources to workspace source = workflow_form.cleaned_data.get('resource_archive') if source.name.endswith('.zip'): workflow.save() Workflow.objects.initialize(workflow, request.fs) temp_path = archive_factory(source).extract() request.fs.copyFromLocal(temp_path, workflow.deployment_dir) shutil.rmtree(temp_path) else: raise PopupException(_('Archive should be a Zip.')) else: workflow.save() Workflow.objects.initialize(workflow, request.fs) workflow.managed = True workflow.save() workflow_definition = workflow_form.cleaned_data[ 'definition_file'].read() try: _import_workflow(fs=request.fs, workflow=workflow, workflow_definition=workflow_definition) request.info(_('Workflow imported')) return redirect( reverse('oozie:edit_workflow', kwargs={'workflow': workflow.id})) except Exception, e: request.error(_('Could not import workflow: %s' % e)) Workflow.objects.destroy(workflow, request.fs) raise PopupException(_('Could not import workflow.'), detail=e) else: request.error(_('Errors on the form: %s') % workflow_form.errors)
def import_workflow(request): workflow = Workflow.objects.new_workflow(request.user) if request.method == 'POST': workflow_form = ImportWorkflowForm(request.POST, request.FILES, instance=workflow) if workflow_form.is_valid(): if workflow_form.cleaned_data.get('resource_archive'): # Upload resources to workspace source = workflow_form.cleaned_data.get('resource_archive') if source.name.endswith('.zip'): workflow.save() Workflow.objects.initialize(workflow, request.fs) temp_path = archive_factory(source).extract() request.fs.copyFromLocal(temp_path, workflow.deployment_dir) shutil.rmtree(temp_path) else: raise PopupException(_('Archive should be a Zip.')) else: workflow.save() Workflow.objects.initialize(workflow, request.fs) workflow.managed = True workflow.save() workflow_definition = workflow_form.cleaned_data['definition_file'].read() try: _import_workflow(fs=request.fs, workflow=workflow, workflow_definition=workflow_definition) request.info(_('Workflow imported')) return redirect(reverse('oozie:edit_workflow', kwargs={'workflow': workflow.id})) except Exception, e: request.error(_('Could not import workflow: %s' % e)) Workflow.objects.destroy(workflow, request.fs) raise PopupException(_('Could not import workflow.'), detail=e) else: request.error(_('Errors on the form: %s') % workflow_form.errors)
def import_workflow(request): workflow = Workflow.objects.new_workflow(request.user) if request.method == 'POST': workflow_form = ImportWorkflowForm(request.POST, request.FILES, instance=workflow) if workflow_form.is_valid(): workflow.save() workflow_definition = workflow_form.cleaned_data['definition_file'].read() try: _import_workflow(fs=request.fs, workflow=workflow, workflow_definition=workflow_definition) request.info(_('Workflow imported')) return redirect(reverse('oozie:edit_workflow', kwargs={'workflow': workflow.id})) except Exception, e: request.error(_('Could not import workflow: %s' % e)) Workflow.objects.destroy(workflow, request.fs) raise PopupException(_('Could not import workflow.'), detail=e) else: request.error(_('Errors on the form: %s') % workflow_form.errors)