@@ -438,8 +438,10 class Experiment(models.Model): | |||||
438 | for conf in confs: |
|
438 | for conf in confs: | |
439 | conf.stop_device() |
|
439 | conf.stop_device() | |
440 | conf.write_device() |
|
440 | conf.write_device() | |
|
441 | conf.device.conf_active = conf.pk | |||
|
442 | conf.device.save() | |||
441 | conf.start_device() |
|
443 | conf.start_device() | |
442 |
time.sleep( |
|
444 | time.sleep(1) | |
443 | except: |
|
445 | except: | |
444 | return 0 |
|
446 | return 0 | |
445 | return 2 |
|
447 | return 2 |
@@ -61,7 +61,8 urlpatterns = ( | |||||
61 |
|
61 | |||
62 | url(r'^operation/$', views.operation, name='url_operation'), |
|
62 | url(r'^operation/$', views.operation, name='url_operation'), | |
63 | url(r'^operation/(?P<id_camp>-?\d+)/$', views.operation, name='url_operation'), |
|
63 | url(r'^operation/(?P<id_camp>-?\d+)/$', views.operation, name='url_operation'), | |
64 |
url(r'^operation/(?P<id_camp>-?\d+)/revoke$', views.revoke_tasks, name='url_operation_revoke'), |
|
64 | url(r'^operation/(?P<id_camp>-?\d+)/revoke$', views.revoke_tasks, name='url_operation_revoke'), | |
|
65 | url(r'^operation/(?P<id_camp>-?\d+)/show$', views.show_tasks, name='url_operation_show'), | |||
65 | url(r'^operation/(?P<id_camp>-?\d+)/radar/(?P<id_radar>-?\d+)/start/$', views.radar_start, name='url_radar_start'), |
|
66 | url(r'^operation/(?P<id_camp>-?\d+)/radar/(?P<id_radar>-?\d+)/start/$', views.radar_start, name='url_radar_start'), | |
66 | url(r'^operation/(?P<id_camp>-?\d+)/radar/(?P<id_radar>-?\d+)/stop/$', views.radar_stop, name='url_radar_stop'), |
|
67 | url(r'^operation/(?P<id_camp>-?\d+)/radar/(?P<id_radar>-?\d+)/stop/$', views.radar_stop, name='url_radar_stop'), | |
67 | url(r'^operation/(?P<id_camp>-?\d+)/radar/(?P<id_radar>-?\d+)/refresh/$', views.radar_refresh, name='url_radar_refresh'), |
|
68 | url(r'^operation/(?P<id_camp>-?\d+)/radar/(?P<id_radar>-?\d+)/refresh/$', views.radar_refresh, name='url_radar_refresh'), |
@@ -1877,6 +1877,23 def revoke_tasks(request, id_camp): | |||||
1877 |
|
1877 | |||
1878 | return HttpResponseRedirect(reverse('url_operation', args=[id_camp])) |
|
1878 | return HttpResponseRedirect(reverse('url_operation', args=[id_camp])) | |
1879 |
|
1879 | |||
|
1880 | @login_required | |||
|
1881 | def show_tasks(request, id_camp): | |||
|
1882 | ||||
|
1883 | i = app.control.inspect() | |||
|
1884 | scheduled = i.scheduled().values()[0] | |||
|
1885 | revoked = i.revoked().values()[0] | |||
|
1886 | ||||
|
1887 | for t in scheduled: | |||
|
1888 | if t['request']['id'] in revoked: | |||
|
1889 | continue | |||
|
1890 | exp = Experiment.objects.get(pk=eval(t['request']['args'])[0]) | |||
|
1891 | eta = t['eta'] | |||
|
1892 | task = t['request']['name'].split('.')[-1] | |||
|
1893 | messages.success(request, 'Task {} scheduled at {} for experiment {}'.format(task, eta, exp.name)) | |||
|
1894 | ||||
|
1895 | return HttpResponseRedirect(reverse('url_operation', args=[id_camp])) | |||
|
1896 | ||||
1880 | def real_time(request): |
|
1897 | def real_time(request): | |
1881 |
|
1898 | |||
1882 | graphic_path = "/home/fiorella/Pictures/catwbeanie.jpg" |
|
1899 | graphic_path = "/home/fiorella/Pictures/catwbeanie.jpg" |
General Comments 0
You need to be logged in to leave comments.
Login now