Add completed attribute to plays and tasks, remove files from tasks

It's relevant to track whether or not plays and tasks have completed
like playbooks so let's do that.

For tasks, they are only associated to a single file so drop the
'files' attribute, we already have a 'file' field.

Change-Id: I15e37a9f913fca51dad5143ff88bd3f1c1cf0d28
This commit is contained in:
David Moreau Simard 2018-06-19 15:09:02 -04:00
parent bacd61bade
commit 44d108cbbd
No known key found for this signature in database
GPG Key ID: 33A07694CBB71ECC
2 changed files with 5 additions and 3 deletions

View File

@ -1,4 +1,4 @@
# Generated by Django 2.0.3 on 2018-03-20 18:21
# Generated by Django 2.0.6 on 2018-06-19 20:27
from django.db import migrations, models
import django.db.models.deletion
@ -65,6 +65,7 @@ class Migration(migrations.Migration):
('started', models.DateTimeField(default=django.utils.timezone.now)),
('ended', models.DateTimeField(blank=True, null=True)),
('name', models.CharField(blank=True, max_length=255, null=True)),
('completed', models.BooleanField(default=False)),
],
options={
'db_table': 'plays',
@ -132,8 +133,8 @@ class Migration(migrations.Migration):
('lineno', models.IntegerField()),
('tags', models.BinaryField(max_length=4294967295)),
('handler', models.BooleanField()),
('completed', models.BooleanField(default=False)),
('file', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='tasks', to='api.File')),
('files', models.ManyToManyField(to='api.File')),
('play', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='tasks', to='api.Play')),
],
options={

View File

@ -126,6 +126,7 @@ class Play(Duration):
db_table = 'plays'
name = models.CharField(max_length=255, blank=True, null=True)
completed = models.BooleanField(default=False)
playbook = models.ForeignKey(Playbook, on_delete=models.CASCADE, related_name='plays')
def __str__(self):
@ -143,10 +144,10 @@ class Task(Duration):
lineno = models.IntegerField()
tags = models.BinaryField(max_length=(2 ** 32) - 1)
handler = models.BooleanField()
completed = models.BooleanField(default=False)
play = models.ForeignKey(Play, on_delete=models.CASCADE, related_name='tasks')
file = models.ForeignKey(File, on_delete=models.CASCADE, related_name='tasks')
files = models.ManyToManyField(File)
def __str__(self):
return '<Task %s:%s>' % (self.name, self.id)