import time
from django.db import transaction
+from django.utils.functional import SimpleLazyObject
from django.utils.timezone import now
from pyqcg import QCG
from pyqcg.description import JobDescription
**changed_filter)
tte = time.time()
- jobs_cache = {j.job_id: j for j in Job.objects.filter(owner=user)}
+ jobs_cache = SimpleLazyObject(lambda: {j.job_id: j for j in Job.objects.filter(owner=user)})
task_count = 0
for qcg_task in tasks:
params = Task.qcg_map(qcg_task, jobs_cache)
def submit_job(params, proxy):
- # print params
-
QCG.start()
desc = JobDescription(Credential(proxy))
if params['watch_output']:
desc.set_watch_output(params['watch_output'], params['watch_output_pattern'])
# TODO script
- # TODO stage_out
# TODO monitoring
# for prop in direct_map + ('application', 'nodes', 'env_variables', 'reservation', 'watch_output'):
# print desc.xml_description
- # job = desc.submit()
+ job = desc.submit()
- # return job.job_id
+ return job.job_id