Browse Source

HUE-8374 [core] Hue database schema migration

jdesjean 7 years ago
parent
commit
b8a5d71b4d

+ 1 - 86
apps/oozie/src/oozie/migrations/0001_initial.py

@@ -31,7 +31,7 @@ class Migration(migrations.Migration):
                 ('name', models.CharField(help_text='The name of the variable of the workflow to automatically fill up.', max_length=40, validators=[django.core.validators.RegexValidator(message='Enter a valid value: combination of 2 - 40 letters and digits starting by a letter', regex=b'^[a-zA-Z_][\\-_a-zA-Z0-9]{1,39}$')], verbose_name='Name of an input variable in the workflow.')),
             ],
         ),
-        migrations.CreateModel(
+         migrations.CreateModel(
             name='DataOutput',
             fields=[
                 ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
@@ -407,89 +407,4 @@ class Migration(migrations.Migration):
             ],
             bases=('oozie.job',),
         ),
-        migrations.AddField(
-            model_name='node',
-            name='children',
-            field=models.ManyToManyField(related_name='parents', through='oozie.Link', to='oozie.Node'),
-        ),
-        migrations.AddField(
-            model_name='link',
-            name='child',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='parent_node', to='oozie.Node', verbose_name=b''),
-        ),
-        migrations.AddField(
-            model_name='link',
-            name='parent',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='child_node', to='oozie.Node'),
-        ),
-        migrations.AddField(
-            model_name='job',
-            name='owner',
-            field=models.ForeignKey(help_text='Person who can modify the job.', on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Owner'),
-        ),
-        migrations.AddField(
-            model_name='history',
-            name='job',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='oozie.Job'),
-        ),
-        migrations.AddField(
-            model_name='history',
-            name='submitter',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
-        ),
-        migrations.AddField(
-            model_name='dataoutput',
-            name='dataset',
-            field=models.OneToOneField(help_text='The pattern of the output data we want to generate.', on_delete=django.db.models.deletion.CASCADE, to='oozie.Dataset', verbose_name='The dataset representing the format of the data output.'),
-        ),
-        migrations.AddField(
-            model_name='datainput',
-            name='dataset',
-            field=models.OneToOneField(help_text='The pattern of the input data we want to process.', on_delete=django.db.models.deletion.CASCADE, to='oozie.Dataset', verbose_name='The dataset representing format of the data input.'),
-        ),
-        migrations.AddField(
-            model_name='subworkflow',
-            name='sub_workflow',
-            field=models.ForeignKey(blank=True, default=None, help_text='The sub-workflow application to include. You must own all the sub-workflows.', null=True, on_delete=django.db.models.deletion.CASCADE, to='oozie.Workflow', verbose_name='Sub-workflow'),
-        ),
-        migrations.AddField(
-            model_name='node',
-            name='workflow',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='oozie.Workflow'),
-        ),
-        migrations.AddField(
-            model_name='dataset',
-            name='coordinator',
-            field=models.ForeignKey(help_text='The coordinator associated with this data.', on_delete=django.db.models.deletion.CASCADE, to='oozie.Coordinator', verbose_name='Coordinator'),
-        ),
-        migrations.AddField(
-            model_name='dataoutput',
-            name='coordinator',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='oozie.Coordinator'),
-        ),
-        migrations.AddField(
-            model_name='datainput',
-            name='coordinator',
-            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='oozie.Coordinator'),
-        ),
-        migrations.AddField(
-            model_name='coordinator',
-            name='coordinatorworkflow',
-            field=models.ForeignKey(help_text='The workflow to schedule repeatedly.', null=True, on_delete=django.db.models.deletion.CASCADE, to='oozie.Workflow', verbose_name='Workflow'),
-        ),
-        migrations.AddField(
-            model_name='bundledcoordinator',
-            name='bundle',
-            field=models.ForeignKey(help_text='The bundle regrouping all the coordinators.', on_delete=django.db.models.deletion.CASCADE, to='oozie.Bundle', verbose_name='Bundle'),
-        ),
-        migrations.AddField(
-            model_name='bundledcoordinator',
-            name='coordinator',
-            field=models.ForeignKey(help_text='The coordinator to batch with other coordinators.', on_delete=django.db.models.deletion.CASCADE, to='oozie.Coordinator', verbose_name='Coordinator'),
-        ),
-        migrations.AddField(
-            model_name='bundle',
-            name='coordinators',
-            field=models.ManyToManyField(through='oozie.BundledCoordinator', to='oozie.Coordinator'),
-        ),
     ]

+ 106 - 0
apps/oozie/src/oozie/migrations/0002_initial.py

@@ -0,0 +1,106 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11 on 2018-06-06 18:55
+from __future__ import unicode_literals
+
+from django.conf import settings
+import django.core.validators
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+        ('oozie', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='node',
+            name='children',
+            field=models.ManyToManyField(related_name='parents', through='oozie.Link', to='oozie.Node'),
+        ),
+        migrations.AddField(
+            model_name='link',
+            name='child',
+            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='parent_node', to='oozie.Node', verbose_name=b''),
+        ),
+        migrations.AddField(
+            model_name='link',
+            name='parent',
+            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='child_node', to='oozie.Node'),
+        ),
+        migrations.AddField(
+            model_name='job',
+            name='owner',
+            field=models.ForeignKey(help_text='Person who can modify the job.', on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Owner'),
+        ),
+        migrations.AddField(
+            model_name='history',
+            name='job',
+            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='oozie.Job'),
+        ),
+        migrations.AddField(
+            model_name='history',
+            name='submitter',
+            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
+        ),
+        migrations.AddField(
+            model_name='dataoutput',
+            name='dataset',
+            field=models.OneToOneField(help_text='The pattern of the output data we want to generate.', on_delete=django.db.models.deletion.CASCADE, to='oozie.Dataset', verbose_name='The dataset representing the format of the data output.'),
+        ),
+        migrations.AddField(
+            model_name='datainput',
+            name='dataset',
+            field=models.OneToOneField(help_text='The pattern of the input data we want to process.', on_delete=django.db.models.deletion.CASCADE, to='oozie.Dataset', verbose_name='The dataset representing format of the data input.'),
+        ),
+        migrations.AddField(
+            model_name='subworkflow',
+            name='sub_workflow',
+            field=models.ForeignKey(blank=True, default=None, help_text='The sub-workflow application to include. You must own all the sub-workflows.', null=True, on_delete=django.db.models.deletion.CASCADE, to='oozie.Workflow', verbose_name='Sub-workflow'),
+        ),
+        migrations.AddField(
+            model_name='node',
+            name='workflow',
+            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='oozie.Workflow'),
+        ),
+        migrations.AddField(
+            model_name='dataset',
+            name='coordinator',
+            field=models.ForeignKey(help_text='The coordinator associated with this data.', on_delete=django.db.models.deletion.CASCADE, to='oozie.Coordinator', verbose_name='Coordinator'),
+        ),
+        migrations.AddField(
+            model_name='dataoutput',
+            name='coordinator',
+            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='oozie.Coordinator'),
+        ),
+        migrations.AddField(
+            model_name='datainput',
+            name='coordinator',
+            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='oozie.Coordinator'),
+        ),
+        migrations.AddField(
+            model_name='coordinator',
+            name='coordinatorworkflow',
+            field=models.ForeignKey(help_text='The workflow to schedule repeatedly.', null=True, on_delete=django.db.models.deletion.CASCADE, to='oozie.Workflow', verbose_name='Workflow'),
+        ),
+        migrations.AddField(
+            model_name='bundledcoordinator',
+            name='bundle',
+            field=models.ForeignKey(help_text='The bundle regrouping all the coordinators.', on_delete=django.db.models.deletion.CASCADE, to='oozie.Bundle', verbose_name='Bundle'),
+        ),
+        migrations.AddField(
+            model_name='bundledcoordinator',
+            name='coordinator',
+            field=models.ForeignKey(help_text='The coordinator to batch with other coordinators.', on_delete=django.db.models.deletion.CASCADE, to='oozie.Coordinator', verbose_name='Coordinator'),
+        ),
+        migrations.AddField(
+            model_name='bundle',
+            name='coordinators',
+            field=models.ManyToManyField(through='oozie.BundledCoordinator', to='oozie.Coordinator'),
+        ),
+    ]

+ 0 - 44
desktop/core/src/desktop/migrations/0001_initial.py

@@ -20,19 +20,6 @@ class Migration(migrations.Migration):
     ]
 
     operations = [
-        migrations.CreateModel(
-            name='DefaultConfiguration',
-            fields=[
-                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('app', models.CharField(db_index=True, help_text='App that this configuration belongs to.', max_length=32)),
-                ('properties', models.TextField(default=b'[]', help_text='JSON-formatted default properties values.')),
-                ('is_default', models.BooleanField(db_index=True, default=False)),
-                ('groups', models.ManyToManyField(db_index=True, db_table=b'defaultconfiguration_groups', to='auth.Group')),
-            ],
-            options={
-                'ordering': ['app', '-is_default', 'user'],
-            },
-        ),
         migrations.CreateModel(
             name='Document',
             fields=[
@@ -56,12 +43,9 @@ class Migration(migrations.Migration):
                 ('type', models.CharField(db_index=True, default=b'', help_text='Type of document, e.g. Hive query, Oozie workflow, Search Dashboard...', max_length=32)),
                 ('data', models.TextField(default=b'{}')),
                 ('extra', models.TextField(default=b'')),
-                ('search', models.TextField(blank=True, help_text='Searchable text for the document.', null=True)),
                 ('last_modified', models.DateTimeField(auto_now=True, db_index=True, verbose_name='Time last modified')),
                 ('version', models.SmallIntegerField(db_index=True, default=1, verbose_name='Document version')),
                 ('is_history', models.BooleanField(db_index=True, default=False)),
-                ('is_managed', models.BooleanField(db_index=True, default=False, verbose_name='If managed under the cover by Hue and never by the user')),
-                ('is_trashed', models.NullBooleanField(db_index=True, default=False, verbose_name='True if trashed')),
                 ('dependencies', models.ManyToManyField(db_index=True, related_name='dependents', to='desktop.Document2')),
             ],
             options={
@@ -109,19 +93,6 @@ class Migration(migrations.Migration):
                 ('value', models.TextField(max_length=4096)),
             ],
         ),
-        migrations.CreateModel(
-            name='HueUser',
-            fields=[
-            ],
-            options={
-                'proxy': True,
-                'indexes': [],
-            },
-            bases=('auth.user',),
-            managers=[
-                ('objects', django.contrib.auth.models.UserManager()),
-            ],
-        ),
         migrations.AddField(
             model_name='userpreferences',
             name='user',
@@ -162,21 +133,6 @@ class Migration(migrations.Migration):
             name='tags',
             field=models.ManyToManyField(db_index=True, to='desktop.DocumentTag'),
         ),
-        migrations.AddField(
-            model_name='defaultconfiguration',
-            name='user',
-            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
-        ),
-        migrations.CreateModel(
-            name='Directory',
-            fields=[
-            ],
-            options={
-                'proxy': True,
-                'indexes': [],
-            },
-            bases=('desktop.document2',),
-        ),
         migrations.AlterUniqueTogether(
             name='documenttag',
             unique_together=set([('owner', 'tag')]),

+ 38 - 0
desktop/core/src/desktop/migrations/0002_initial.py

@@ -0,0 +1,38 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11 on 2018-06-13 10:46
+from __future__ import unicode_literals
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+        ('desktop', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='DefaultConfiguration',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('app', models.CharField(db_index=True, help_text='App that this configuration belongs to.', max_length=32)),
+                ('properties', models.TextField(default=b'[]', help_text='JSON-formatted default properties values.')),
+                ('is_default', models.BooleanField(db_index=True, default=False)),
+                ('groups', models.ManyToManyField(db_index=True, db_table=b'defaultconfiguration_groups', to='auth.Group')),
+            ],
+            options={
+                'ordering': ['app', '-is_default', 'user'],
+            },
+        ),
+        migrations.AddField(
+            model_name='defaultconfiguration',
+            name='user',
+            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
+        ),
+    ]

+ 27 - 0
desktop/core/src/desktop/migrations/0003_initial.py

@@ -0,0 +1,27 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11 on 2018-06-13 10:46
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        ('desktop', '0002_initial'),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Directory',
+            fields=[
+            ],
+            options={
+                'proxy': True,
+                'indexes': [],
+            },
+            bases=('desktop.document2',),
+        ),
+    ]

+ 31 - 0
desktop/core/src/desktop/migrations/0004_initial.py

@@ -0,0 +1,31 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11 on 2018-06-13 10:46
+from __future__ import unicode_literals
+
+import django.contrib.auth.models
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        ('desktop', '0003_initial'),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='HueUser',
+            fields=[
+            ],
+            options={
+                'proxy': True,
+                'indexes': [],
+            },
+            bases=('auth.user',),
+            managers=[
+                ('objects', django.contrib.auth.models.UserManager()),
+            ],
+        ),
+    ]

+ 22 - 0
desktop/core/src/desktop/migrations/0005_initial.py

@@ -0,0 +1,22 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11 on 2018-06-13 10:46
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        ('desktop', '0004_initial'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='document2',
+            name='search',
+            field=models.TextField(blank=True, help_text='Searchable text for the document.', null=True),
+        ),
+    ]

+ 21 - 0
desktop/core/src/desktop/migrations/0006_initial.py

@@ -0,0 +1,21 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11 on 2018-06-13 10:46
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        ('desktop', '0005_initial'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='document2',
+            name='is_trashed',
+            field=models.NullBooleanField(db_index=True, default=False, verbose_name='True if trashed'),
+        ),
+    ]

+ 21 - 0
desktop/core/src/desktop/migrations/0007_initial.py

@@ -0,0 +1,21 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11 on 2018-06-13 10:46
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        ('desktop', '0006_initial'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='document2',
+            name='is_managed',
+            field=models.BooleanField(db_index=True, default=False, verbose_name='If managed under the cover by Hue and never by the user'),
+        ),
+    ]

+ 1 - 1
tools/app_reg/build.py

@@ -59,7 +59,7 @@ def make_syncdb():
   hue_exec = os.path.join(common.INSTALL_ROOT, 'build', 'env', 'bin', 'hue')
   if os.path.exists(hue_exec):
     statuses.append( runcmd([ hue_exec, 'makemigrations', '--noinput' ]) )
-    statuses.append( runcmd([ hue_exec, 'migrate' ]) )
+    statuses.append( runcmd([ hue_exec, 'migrate', '--fake-initial' ]) )
   return not any(statuses)
 
 def make_collectstatic():