diff --git a/beat/web/databases/migrations/0004_beat_backend_python_1_5_x.py b/beat/web/databases/migrations/0004_beat_backend_python_1_5_x.py index 0701c6b8644423ce03367535207600da14ca678c..35960a975d955dcf8a600f0075bf1465193de8d5 100644 --- a/beat/web/databases/migrations/0004_beat_backend_python_1_5_x.py +++ b/beat/web/databases/migrations/0004_beat_backend_python_1_5_x.py @@ -4,26 +4,6 @@ from __future__ import unicode_literals from django.db import migrations, models -from beat.backend.python.hash import hashDataset - - -def compute_hashes(apps, schema_editor): - '''Refreshes each database so datasets/outputs are recreated''' - - DatabaseSet = apps.get_model("databases", "DatabaseSet") - - if DatabaseSet.objects.count(): - print('') - - for db_set in DatabaseSet.objects.order_by('id'): - print("Computing hashes for database set '%s/%d/%s/%s'..." % \ - (db_set.protocol.database.name, db_set.protocol.database.version, - db_set.protocol.name, db_set.name)) - - db_set.hash = hashDataset('%s/%d' % (db_set.protocol.database.name, db_set.protocol.database.version), - db_set.protocol.name, db_set.name) - db_set.save() - class Migration(migrations.Migration): @@ -42,11 +22,4 @@ class Migration(migrations.Migration): field=models.CharField(default='', max_length=64), preserve_default=False, ), - migrations.RunPython(compute_hashes), - migrations.AlterField( - model_name='databaseset', - name='hash', - field=models.CharField(max_length=64, unique=True), - preserve_default=False, - ), ] diff --git a/beat/web/databases/migrations/0005_databaseset_data_migration.py b/beat/web/databases/migrations/0005_databaseset_data_migration.py new file mode 100644 index 0000000000000000000000000000000000000000..44a24f1c840357d8442504e1f56b9a3d9fcbbdd4 --- /dev/null +++ b/beat/web/databases/migrations/0005_databaseset_data_migration.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.13 on 2018-01-25 09:06 +from __future__ import unicode_literals + +from django.db import migrations, models + +from beat.backend.python.hash import hashDataset + + +def compute_hashes(apps, schema_editor): + '''Refreshes each database so datasets/outputs are recreated''' + + DatabaseSet = apps.get_model("databases", "DatabaseSet") + + if DatabaseSet.objects.count(): + print('') + + for db_set in DatabaseSet.objects.order_by('id'): + print("Computing hashes for database set '%s/%d/%s/%s'..." % \ + (db_set.protocol.database.name, db_set.protocol.database.version, + db_set.protocol.name, db_set.name)) + + db_set.hash = hashDataset('%s/%d' % (db_set.protocol.database.name, db_set.protocol.database.version), + db_set.protocol.name, db_set.name) + db_set.save() + + +class Migration(migrations.Migration): + + dependencies = [ + ('databases', '0004_beat_backend_python_1_5_x'), + ] + + operations = [ + migrations.RunPython(compute_hashes), + ] diff --git a/beat/web/databases/migrations/0006_databaseset_hash_unique.py b/beat/web/databases/migrations/0006_databaseset_hash_unique.py new file mode 100644 index 0000000000000000000000000000000000000000..8ce33badee0597b74533ae8b930218e7847362e5 --- /dev/null +++ b/beat/web/databases/migrations/0006_databaseset_hash_unique.py @@ -0,0 +1,21 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.13 on 2018-01-25 09:06 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('databases', '0005_databaseset_data_migration'), + ] + + operations = [ + migrations.AlterField( + model_name='databaseset', + name='hash', + field=models.CharField(max_length=64, unique=True), + preserve_default=False, + ), + ]