##// END OF EJS Templates
Update abs operations
Update abs operations

File last commit:

r306:026b526b64ec
r313:9bf21dca53e0
Show More
tasks.py
45 lines | 866 B | text/x-python | PythonLexer
Juan C. Espinoza
Add scheduler for campaigns/experiments using celery #718, fix views and models bugs...
r196 from __future__ import absolute_import
from celery import task
Fiorella Quino
task for monitoring devices status from experiment...
r253 from datetime import timedelta, datetime
Juan C. Espinoza
Add scheduler for campaigns/experiments using celery #718, fix views and models bugs...
r196
from .models import Experiment
@task
def task_start(id_exp):
Fiorella Quino
task for monitoring devices status from experiment...
r253
Juan C. Espinoza
Add scheduler for campaigns/experiments using celery #718, fix views and models bugs...
r196 exp = Experiment.objects.get(pk=id_exp)
Fiorella Quino
task for monitoring devices status from experiment...
r253
Juan C. Espinoza
Add scheduler for campaigns/experiments using celery #718, fix views and models bugs...
r196 return exp.start()
Fiorella Quino
task for monitoring devices status from experiment...
r253
Juan C. Espinoza
Add scheduler for campaigns/experiments using celery #718, fix views and models bugs...
r196 @task
def task_stop(id_exp):
Fiorella Quino
task for monitoring devices status from experiment...
r253
Juan C. Espinoza
Add scheduler for campaigns/experiments using celery #718, fix views and models bugs...
r196 exp = Experiment.objects.get(pk=id_exp)
Fiorella Quino
task for monitoring devices status from experiment...
r253
Juan C. Espinoza
Add scheduler for campaigns/experiments using celery #718, fix views and models bugs...
r196 return exp.stop()
Juan C. Espinoza
Improve operation & search views
r306 def kill_tasks():
i = task.control.inspect()
tasks = i.scheduled()
print tasks
#if tasks:
# print dir(tasks[0])
Fiorella Quino
task for monitoring devices status from experiment...
r253
#Task to get status
@task
def task_status(id_exp):
exp = Experiment.objects.get(pk=id_exp)
if exp.status==2:
run_every = timedelta(minutes=1)
now = datetime.utcnow()
date = now + run_every
task_status.apply_async((id_exp,), eta=date)
print "Monitoring..."
exp.get_status()
return exp.status
else:
return exp.status