def tasks(request, uuid): job = models.Job.objects.get(jobuuid=uuid) objects = job.task_set.all().order_by('-exitcode', '-endtime', '-starttime', '-createdtime') if (len(objects) == 0): return tasks_subjobs(request, uuid) # Filenames can be any encoding - we want to be able to display # unicode, while just displaying unicode replacement characters # for any other encoding present. for item in objects: item.filename = escape(item.filename) item.arguments = escape(item.arguments) item.stdout = escape(item.stdout) item.stderror = escape(item.stderror) page = helpers.pager(objects, django_settings.TASKS_PER_PAGE, request.GET.get('page', None)) objects = page.object_list # figure out duration in seconds for object in objects: object.duration = helpers.task_duration_in_seconds(object) return render(request, 'main/tasks.html', locals())
def tasks(request, uuid): job = models.Job.objects.get(jobuuid=uuid) objects = job.task_set.all().order_by('-exitcode', '-endtime', '-starttime', '-createdtime') page = helpers.pager(objects, django_settings.TASKS_PER_PAGE, request.GET.get('page', None)) objects = page['objects'] # figure out duration in seconds for object in objects: object.duration = helpers.task_duration_in_seconds(object) return render(request, 'main/tasks.html', locals())
def format_task(task, detailed_output=False): """Format task attributes for endpoint response""" result = {"uuid": task.taskuuid, "exit_code": task.exitcode} if detailed_output: result.update({ "file_uuid": task.fileuuid, "file_name": task.filename, "time_created": format_datetime(task.createdtime), "time_started": format_datetime(task.starttime), "time_ended": format_datetime(task.endtime), "duration": helpers.task_duration_in_seconds(task), }) return result
def tasks(request, uuid): job = models.Job.objects.get(jobuuid=uuid) objects = job.task_set.all().order_by('-exitcode', '-endtime', '-starttime', '-createdtime') if (len(objects) == 0): return tasks_subjobs(request, uuid) page = helpers.pager(objects, django_settings.TASKS_PER_PAGE, request.GET.get('page', None)) objects = page['objects'] # figure out duration in seconds for object in objects: object.duration = helpers.task_duration_in_seconds(object) return render(request, 'main/tasks.html', locals())
def task(request, uuid): task = models.Task.objects.get(taskuuid=uuid) task.duration = helpers.task_duration_in_seconds(task) objects = [task] return render(request, 'main/tasks.html', locals())