def get(self, *args, **kwargs):
task = self.get_object()
if task.status in consts.NOT_RUN_STATUSES:
hosts = task.hosts.all()
groups = task.host_groups.all()
vars = task.vars.all()
task.id = None
task.pid = None
task.status = consts.WAIT
task.save()
task.hosts.add(*hosts)
task.host_groups.add(*groups)
task.vars.add(*vars)
models.TaskLog.objects.create(
task=task,
status=consts.IN_PROGRESS,
message='Replay task'
)
else:
messages.info(self.request, 'Not start duplicate task')
return redirect(reverse('task_log', kwargs={'pk': task.id}))
评论列表
文章目录