From 1073f7f5b5a9e51fd79ab58f1f4fb3389d7e6331 Mon Sep 17 00:00:00 2001 From: Maciej Tronowski Date: Wed, 9 Sep 2015 16:11:19 +0200 Subject: [PATCH] move job submission to dedicated function --- qcg/service.py | 20 ++++++++++++++++++-- qcg/utils.py | 3 +-- qcg/views.py | 13 +++++-------- 3 files changed, 24 insertions(+), 12 deletions(-) diff --git a/qcg/service.py b/qcg/service.py index 787ea38..9e99d43 100644 --- a/qcg/service.py +++ b/qcg/service.py @@ -129,6 +129,22 @@ def update_job(job, proxy): elapsed, job.job_id, elapsed_job, job.tasks.count(), elapsed_tasks, elapsed_py) +def submit(obj, proxy): + ts = time.time() + QCG.start() + cred = Credential(proxy) + + jts = time.time() + result = obj.submit(cred) + elapsed_submit = time.time() - jts + + elapsed = time.time() - ts + elapsed_py = elapsed - elapsed_submit + logger.info('(%.3f) JOB = %s, REMOTE = %.3f, LOCAL = %.3f', elapsed, result.job_id, elapsed_submit, elapsed_py) + + return result + + def cancel(obj, proxy): ts = time.time() QCG.start() @@ -142,7 +158,7 @@ def cancel(obj, proxy): elapsed = time.time() - ts elapsed_py = elapsed - elapsed_cancel - logger.info('(%.3f) OBJ = %s (%.3f), TIME = %.3f', elapsed, obj, elapsed_cancel, elapsed_py) + logger.info('(%.3f) OBJ = %s, REMOTE = %.3f, LOCAL = %.3f', elapsed, obj, elapsed_cancel, elapsed_py) def clean(obj, proxy): @@ -158,4 +174,4 @@ def clean(obj, proxy): elapsed = time.time() - ts elapsed_py = elapsed - elapsed_clean - logger.info('(%.3f) OBJ = %s (%.3f), TIME = %.3f', elapsed, obj, elapsed_clean, elapsed_py) + logger.info('(%.3f) OBJ = %s, REMOTE = %.3f, LOCAL = %.3f', elapsed, obj, elapsed_clean, elapsed_py) diff --git a/qcg/utils.py b/qcg/utils.py index 44de96f..37a5b1a 100644 --- a/qcg/utils.py +++ b/qcg/utils.py @@ -12,7 +12,6 @@ from django.utils.formats import date_format from django.utils.timezone import localtime from django.views.decorators.cache import cache_control from pyqcg import QCG -from pyqcg.utils import Credential from pyqcg.description import JobDescription from filex.ftp import FTPOperation @@ -103,7 +102,7 @@ def generate_md_inputfile(params): def to_job_desc(params, proxy): QCG.start() - desc = JobDescription(Credential(proxy)) + desc = JobDescription() direct_map = ('env_variables', 'executable', 'arguments', 'note', 'grant', 'hosts', 'properties', 'queue', 'procs', 'wall_time', 'memory', 'memory_per_slot', 'modules', 'input', 'stage_in', 'native', 'notify', diff --git a/qcg/views.py b/qcg/views.py index dab0a24..3fae343 100644 --- a/qcg/views.py +++ b/qcg/views.py @@ -23,12 +23,8 @@ from filex.ftp import FTPOperation, FTPError from filex.views import make_url from qcg.forms import FiltersForm, ColumnsForm, JobDescriptionForm, EnvFormSet, JobTemplateForm from qcg.models import JobTemplate -<<<<<<< HEAD -from qcg.utils import paginator_context, to_job_desc, to_form_data, generate_md_inputfile -======= from qcg.utils import paginator_context, to_job_desc, to_form_data, restricted ->>>>>>> 4a588e0... set Cache-Control header for restricted views -from qcg.service import update_user_data, update_job, cancel, clean +from qcg.service import update_user_data, update_job, cancel, clean, submit from django.utils import encoding @@ -36,7 +32,7 @@ import string import random import os from qcg import constants -from qcg.utils import chunks +from qcg.utils import chunks, generate_md_inputfile # for Debugging from pprint import pprint @@ -251,8 +247,9 @@ def job_submit(request, template_id=None): return redirect(template) # wyłączenie wysyłania zadania - zakomentować poniżej - - job = job_desc.submit() + + job = submit(job_desc, request.session['proxy']) + messages.success(request, format_html(' ' -- 1.7.9.5