Skip to content

Commit eca069d

Browse files
committed
Refresh migration. Sort the states so makemigration doesn't trip on different order (and create bogus new migrations).
1 parent b89edaf commit eca069d

File tree

2 files changed

+49
-48
lines changed

2 files changed

+49
-48
lines changed

djcelery/migrations/0001_initial.py

Lines changed: 47 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ class Migration(migrations.Migration):
1414
migrations.CreateModel(
1515
name='CrontabSchedule',
1616
fields=[
17-
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
17+
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
1818
('minute', models.CharField(default='*', max_length=64, verbose_name='minute')),
1919
('hour', models.CharField(default='*', max_length=64, verbose_name='hour')),
2020
('day_of_week', models.CharField(default='*', max_length=64, verbose_name='day of week')),
@@ -23,55 +23,55 @@ class Migration(migrations.Migration):
2323
],
2424
options={
2525
'ordering': ['month_of_year', 'day_of_month', 'day_of_week', 'hour', 'minute'],
26-
'verbose_name_plural': 'crontabs',
2726
'verbose_name': 'crontab',
27+
'verbose_name_plural': 'crontabs',
2828
},
2929
bases=(models.Model,),
3030
),
3131
migrations.CreateModel(
3232
name='IntervalSchedule',
3333
fields=[
34-
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
34+
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
3535
('every', models.IntegerField(verbose_name='every')),
3636
('period', models.CharField(max_length=24, verbose_name='period', choices=[('days', 'Days'), ('hours', 'Hours'), ('minutes', 'Minutes'), ('seconds', 'Seconds'), ('microseconds', 'Microseconds')])),
3737
],
3838
options={
3939
'ordering': ['period', 'every'],
40-
'verbose_name_plural': 'intervals',
4140
'verbose_name': 'interval',
41+
'verbose_name_plural': 'intervals',
4242
},
4343
bases=(models.Model,),
4444
),
4545
migrations.CreateModel(
4646
name='PeriodicTask',
4747
fields=[
48-
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
49-
('name', models.CharField(help_text='Useful description', max_length=200, unique=True, verbose_name='name')),
48+
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
49+
('name', models.CharField(help_text='Useful description', unique=True, max_length=200, verbose_name='name')),
5050
('task', models.CharField(max_length=200, verbose_name='task name')),
51-
('args', models.TextField(default='[]', verbose_name='Arguments', blank=True, help_text='JSON encoded positional arguments')),
52-
('kwargs', models.TextField(default='{}', verbose_name='Keyword arguments', blank=True, help_text='JSON encoded keyword arguments')),
53-
('queue', models.CharField(default=None, max_length=200, help_text='Queue defined in CELERY_QUEUES', blank=True, null=True, verbose_name='queue')),
54-
('exchange', models.CharField(default=None, max_length=200, blank=True, null=True, verbose_name='exchange')),
55-
('routing_key', models.CharField(default=None, max_length=200, blank=True, null=True, verbose_name='routing key')),
56-
('expires', models.DateTimeField(blank=True, null=True, verbose_name='expires')),
51+
('args', models.TextField(default='[]', help_text='JSON encoded positional arguments', verbose_name='Arguments', blank=True)),
52+
('kwargs', models.TextField(default='{}', help_text='JSON encoded keyword arguments', verbose_name='Keyword arguments', blank=True)),
53+
('queue', models.CharField(default=None, max_length=200, blank=True, help_text='Queue defined in CELERY_QUEUES', null=True, verbose_name='queue')),
54+
('exchange', models.CharField(default=None, max_length=200, null=True, verbose_name='exchange', blank=True)),
55+
('routing_key', models.CharField(default=None, max_length=200, null=True, verbose_name='routing key', blank=True)),
56+
('expires', models.DateTimeField(null=True, verbose_name='expires', blank=True)),
5757
('enabled', models.BooleanField(default=True, verbose_name='enabled')),
58-
('last_run_at', models.DateTimeField(blank=True, null=True, editable=False)),
58+
('last_run_at', models.DateTimeField(null=True, editable=False, blank=True)),
5959
('total_run_count', models.PositiveIntegerField(default=0, editable=False)),
6060
('date_changed', models.DateTimeField(auto_now=True)),
6161
('description', models.TextField(verbose_name='description', blank=True)),
62-
('crontab', models.ForeignKey(help_text='Use one of interval/crontab', blank=True, null=True, to='djcelery.CrontabSchedule', verbose_name='crontab')),
63-
('interval', models.ForeignKey(blank=True, null=True, to='djcelery.IntervalSchedule', verbose_name='interval')),
62+
('crontab', models.ForeignKey(blank=True, to='djcelery.CrontabSchedule', help_text='Use one of interval/crontab', null=True, verbose_name='crontab')),
63+
('interval', models.ForeignKey(verbose_name='interval', blank=True, to='djcelery.IntervalSchedule', null=True)),
6464
],
6565
options={
66-
'verbose_name_plural': 'periodic tasks',
6766
'verbose_name': 'periodic task',
67+
'verbose_name_plural': 'periodic tasks',
6868
},
6969
bases=(models.Model,),
7070
),
7171
migrations.CreateModel(
7272
name='PeriodicTasks',
7373
fields=[
74-
('ident', models.SmallIntegerField(primary_key=True, default=1, unique=True, serialize=False)),
74+
('ident', models.SmallIntegerField(default=1, unique=True, serialize=False, primary_key=True)),
7575
('last_update', models.DateTimeField()),
7676
],
7777
options={
@@ -81,83 +81,83 @@ class Migration(migrations.Migration):
8181
migrations.CreateModel(
8282
name='TaskMeta',
8383
fields=[
84-
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
85-
('task_id', models.CharField(max_length=255, unique=True, verbose_name='task id')),
86-
('status', models.CharField(default=b'PENDING', max_length=50, verbose_name='state', choices=[(b'RECEIVED', b'RECEIVED'), (b'STARTED', b'STARTED'), (b'REVOKED', b'REVOKED'), (b'PENDING', b'PENDING'), (b'SUCCESS', b'SUCCESS'), (b'FAILURE', b'FAILURE'), (b'RETRY', b'RETRY')])),
87-
('result', djcelery.picklefield.PickledObjectField(default=None, editable=False, null=True)),
84+
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
85+
('task_id', models.CharField(unique=True, max_length=255, verbose_name='task id')),
86+
('status', models.CharField(default=b'PENDING', max_length=50, verbose_name='state', choices=[(b'FAILURE', b'FAILURE'), (b'PENDING', b'PENDING'), (b'RECEIVED', b'RECEIVED'), (b'RETRY', b'RETRY'), (b'REVOKED', b'REVOKED'), (b'STARTED', b'STARTED'), (b'SUCCESS', b'SUCCESS')])),
87+
('result', djcelery.picklefield.PickledObjectField(default=None, null=True, editable=False)),
8888
('date_done', models.DateTimeField(auto_now=True, verbose_name='done at')),
89-
('traceback', models.TextField(blank=True, null=True, verbose_name='traceback')),
89+
('traceback', models.TextField(null=True, verbose_name='traceback', blank=True)),
9090
('hidden', models.BooleanField(default=False, db_index=True, editable=False)),
91-
('meta', djcelery.picklefield.PickledObjectField(default=None, editable=False, null=True)),
91+
('meta', djcelery.picklefield.PickledObjectField(default=None, null=True, editable=False)),
9292
],
9393
options={
94-
'verbose_name_plural': 'task states',
95-
'verbose_name': 'task state',
9694
'db_table': 'celery_taskmeta',
95+
'verbose_name': 'task state',
96+
'verbose_name_plural': 'task states',
9797
},
9898
bases=(models.Model,),
9999
),
100100
migrations.CreateModel(
101101
name='TaskSetMeta',
102102
fields=[
103-
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
104-
('taskset_id', models.CharField(max_length=255, unique=True, verbose_name='group id')),
103+
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
104+
('taskset_id', models.CharField(unique=True, max_length=255, verbose_name='group id')),
105105
('result', djcelery.picklefield.PickledObjectField(editable=False)),
106106
('date_done', models.DateTimeField(auto_now=True, verbose_name='created at')),
107107
('hidden', models.BooleanField(default=False, db_index=True, editable=False)),
108108
],
109109
options={
110-
'verbose_name_plural': 'saved group results',
111-
'verbose_name': 'saved group result',
112110
'db_table': 'celery_tasksetmeta',
111+
'verbose_name': 'saved group result',
112+
'verbose_name_plural': 'saved group results',
113113
},
114114
bases=(models.Model,),
115115
),
116116
migrations.CreateModel(
117117
name='TaskState',
118118
fields=[
119-
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
120-
('state', models.CharField(max_length=64, db_index=True, choices=[(b'RECEIVED', b'RECEIVED'), (b'STARTED', b'STARTED'), (b'REVOKED', b'REVOKED'), (b'PENDING', b'PENDING'), (b'SUCCESS', b'SUCCESS'), (b'FAILURE', b'FAILURE'), (b'RETRY', b'RETRY')], verbose_name='state')),
121-
('task_id', models.CharField(max_length=36, unique=True, verbose_name='UUID')),
122-
('name', models.CharField(max_length=200, db_index=True, null=True, verbose_name='name')),
123-
('tstamp', models.DateTimeField(db_index=True, verbose_name='event received at')),
124-
('args', models.TextField(verbose_name='Arguments', null=True)),
125-
('kwargs', models.TextField(verbose_name='Keyword arguments', null=True)),
126-
('eta', models.DateTimeField(verbose_name='ETA', null=True)),
127-
('expires', models.DateTimeField(verbose_name='expires', null=True)),
128-
('result', models.TextField(verbose_name='result', null=True)),
129-
('traceback', models.TextField(verbose_name='traceback', null=True)),
130-
('runtime', models.FloatField(verbose_name='execution time', null=True, help_text='in seconds if task succeeded')),
119+
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
120+
('state', models.CharField(db_index=True, max_length=64, verbose_name='state', choices=[(b'FAILURE', b'FAILURE'), (b'PENDING', b'PENDING'), (b'RECEIVED', b'RECEIVED'), (b'RETRY', b'RETRY'), (b'REVOKED', b'REVOKED'), (b'STARTED', b'STARTED'), (b'SUCCESS', b'SUCCESS')])),
121+
('task_id', models.CharField(unique=True, max_length=36, verbose_name='UUID')),
122+
('name', models.CharField(max_length=200, null=True, verbose_name='name', db_index=True)),
123+
('tstamp', models.DateTimeField(verbose_name='event received at', db_index=True)),
124+
('args', models.TextField(null=True, verbose_name='Arguments')),
125+
('kwargs', models.TextField(null=True, verbose_name='Keyword arguments')),
126+
('eta', models.DateTimeField(null=True, verbose_name='ETA')),
127+
('expires', models.DateTimeField(null=True, verbose_name='expires')),
128+
('result', models.TextField(null=True, verbose_name='result')),
129+
('traceback', models.TextField(null=True, verbose_name='traceback')),
130+
('runtime', models.FloatField(help_text='in seconds if task succeeded', null=True, verbose_name='execution time')),
131131
('retries', models.IntegerField(default=0, verbose_name='number of retries')),
132132
('hidden', models.BooleanField(default=False, db_index=True, editable=False)),
133133
],
134134
options={
135135
'ordering': ['-tstamp'],
136136
'get_latest_by': 'tstamp',
137-
'verbose_name_plural': 'tasks',
138137
'verbose_name': 'task',
138+
'verbose_name_plural': 'tasks',
139139
},
140140
bases=(models.Model,),
141141
),
142142
migrations.CreateModel(
143143
name='WorkerState',
144144
fields=[
145-
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
146-
('hostname', models.CharField(max_length=255, unique=True, verbose_name='hostname')),
147-
('last_heartbeat', models.DateTimeField(db_index=True, verbose_name='last heartbeat', null=True)),
145+
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
146+
('hostname', models.CharField(unique=True, max_length=255, verbose_name='hostname')),
147+
('last_heartbeat', models.DateTimeField(null=True, verbose_name='last heartbeat', db_index=True)),
148148
],
149149
options={
150150
'ordering': ['-last_heartbeat'],
151151
'get_latest_by': 'last_heartbeat',
152-
'verbose_name_plural': 'workers',
153152
'verbose_name': 'worker',
153+
'verbose_name_plural': 'workers',
154154
},
155155
bases=(models.Model,),
156156
),
157157
migrations.AddField(
158158
model_name='taskstate',
159159
name='worker',
160-
field=models.ForeignKey(null=True, to='djcelery.WorkerState', verbose_name='worker'),
160+
field=models.ForeignKey(verbose_name='worker', to='djcelery.WorkerState', null=True),
161161
preserve_default=True,
162162
),
163163
]

djcelery/models.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@
1919
from .utils import fromtimestamp, now
2020
from .compat import python_2_unicode_compatible
2121

22-
TASK_STATE_CHOICES = zip(states.ALL_STATES, states.ALL_STATES)
22+
ALL_STATES = sorted(states.ALL_STATES)
23+
TASK_STATE_CHOICES = zip(ALL_STATES, ALL_STATES)
2324

2425

2526
@python_2_unicode_compatible

0 commit comments

Comments
 (0)