mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-09-24 21:08:30 +00:00
perf: 优化一波 migrations
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
# Generated by Django 3.2.14 on 2022-12-28 10:03
|
||||
|
||||
import private_storage.fields
|
||||
import private_storage.storage.files
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
@@ -100,7 +102,7 @@ class Migration(migrations.Migration):
|
||||
models.CharField(blank=True, db_index=True, default='', max_length=36, verbose_name='Organization')),
|
||||
('id', models.UUIDField(default=uuid.uuid4, primary_key=True, serialize=False)),
|
||||
('name', models.CharField(max_length=128, null=True, verbose_name='Name')),
|
||||
('path', models.FileField(upload_to='playbooks/')),
|
||||
('path', private_storage.fields.PrivateFileField(storage=private_storage.storage.files.PrivateFileSystemStorage(), upload_to='playbooks/')),
|
||||
('comment',
|
||||
models.CharField(blank=True, default='', max_length=1024, null=True, verbose_name='Comment')),
|
||||
('creator',
|
||||
@@ -109,6 +111,7 @@ class Migration(migrations.Migration):
|
||||
],
|
||||
options={
|
||||
'abstract': False,
|
||||
'ordering': ['date_created']
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
@@ -242,4 +245,16 @@ class Migration(migrations.Migration):
|
||||
},
|
||||
bases=('ops.jobexecution',),
|
||||
),
|
||||
migrations.AlterUniqueTogether(
|
||||
name='adhoc',
|
||||
unique_together={('name', 'org_id', 'creator')},
|
||||
),
|
||||
migrations.AlterUniqueTogether(
|
||||
name='job',
|
||||
unique_together={('name', 'org_id', 'creator')},
|
||||
),
|
||||
migrations.AlterUniqueTogether(
|
||||
name='playbook',
|
||||
unique_together={('name', 'org_id', 'creator')},
|
||||
),
|
||||
]
|
||||
|
@@ -1,8 +1,26 @@
|
||||
# Generated by Django 3.2.16 on 2022-12-30 08:08
|
||||
|
||||
import django.db.models
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
def compatible(apps, schema_editor):
|
||||
"""
|
||||
兼容旧版本的数据
|
||||
"""
|
||||
model = apps.get_model("ops", "JobExecution")
|
||||
for obj in model.objects.all():
|
||||
if obj.job:
|
||||
if obj.job.type == 'adhoc':
|
||||
obj.material = "{}:{}".format(obj.job.module, obj.job.args)
|
||||
if obj.job.type == 'playbook':
|
||||
obj.material = "{}:{}:{}".format(obj.job.org.name, obj.job.creator.name, obj.job.playbook.name)
|
||||
obj.job_type = obj.job.type
|
||||
obj.save()
|
||||
else:
|
||||
obj.delete()
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
@@ -20,4 +38,31 @@ class Migration(migrations.Migration):
|
||||
name='name',
|
||||
field=models.CharField(max_length=1024, verbose_name='Name'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='playbook',
|
||||
name='create_method',
|
||||
field=models.CharField(choices=[('blank', 'Blank'), ('vcs', 'VCS')], default='blank', max_length=128, verbose_name='CreateMethod'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='playbook',
|
||||
name='vcs_url',
|
||||
field=models.CharField(blank=True, default='', max_length=1024, null=True, verbose_name='VCS URL'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='jobexecution',
|
||||
name='job',
|
||||
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='executions', to='ops.job'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='jobexecution',
|
||||
name='job_type',
|
||||
field=models.CharField(choices=[('adhoc', 'Adhoc'), ('playbook', 'Playbook')], default='adhoc',
|
||||
max_length=128, verbose_name='Material Type'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='jobexecution',
|
||||
name='material',
|
||||
field=models.CharField(blank=True, default='', max_length=1024, null=True, verbose_name='Material'),
|
||||
),
|
||||
migrations.RunPython(compatible),
|
||||
]
|
||||
|
@@ -1,23 +0,0 @@
|
||||
# Generated by Django 3.2.14 on 2023-01-17 03:30
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('ops', '0024_alter_celerytask_date_last_publish'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='playbook',
|
||||
name='create_method',
|
||||
field=models.CharField(choices=[('blank', 'Blank'), ('vcs', 'VCS')], default='blank', max_length=128, verbose_name='CreateMethod'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='playbook',
|
||||
name='vcs_url',
|
||||
field=models.CharField(blank=True, default='', max_length=1024, null=True, verbose_name='VCS URL'),
|
||||
),
|
||||
]
|
@@ -1,19 +0,0 @@
|
||||
# Generated by Django 3.2.14 on 2023-02-03 08:40
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('ops', '0025_auto_20230117_1130'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='jobexecution',
|
||||
name='job',
|
||||
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='executions', to='ops.job'),
|
||||
),
|
||||
]
|
@@ -1,41 +0,0 @@
|
||||
# Generated by Django 3.2.16 on 2023-02-06 11:27
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
def compatible(apps, schema_editor):
|
||||
"""
|
||||
兼容旧版本的数据
|
||||
"""
|
||||
model = apps.get_model("ops", "JobExecution")
|
||||
for obj in model.objects.all():
|
||||
if obj.job:
|
||||
if obj.job.type == 'adhoc':
|
||||
obj.material = "{}:{}".format(obj.job.module, obj.job.args)
|
||||
if obj.job.type == 'playbook':
|
||||
obj.material = "{}:{}:{}".format(obj.job.org.name, obj.job.creator.name, obj.job.playbook.name)
|
||||
obj.job_type = obj.job.type
|
||||
obj.save()
|
||||
else:
|
||||
obj.delete()
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
('ops', '0026_alter_jobexecution_job'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='jobexecution',
|
||||
name='job_type',
|
||||
field=models.CharField(choices=[('adhoc', 'Adhoc'), ('playbook', 'Playbook')], default='adhoc',
|
||||
max_length=128, verbose_name='Material Type'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='jobexecution',
|
||||
name='material',
|
||||
field=models.CharField(blank=True, default='', max_length=1024, null=True, verbose_name='Material'),
|
||||
),
|
||||
migrations.RunPython(compatible),
|
||||
]
|
@@ -1,31 +0,0 @@
|
||||
# Generated by Django 3.2.16 on 2023-02-13 07:03
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
('ops', '0027_auto_20230206_1927'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterModelOptions(
|
||||
name='playbook',
|
||||
options={'ordering': ['date_created']},
|
||||
),
|
||||
migrations.AlterUniqueTogether(
|
||||
name='adhoc',
|
||||
unique_together={('name', 'org_id', 'creator')},
|
||||
),
|
||||
migrations.AlterUniqueTogether(
|
||||
name='job',
|
||||
unique_together={('name', 'org_id', 'creator')},
|
||||
),
|
||||
migrations.AlterUniqueTogether(
|
||||
name='playbook',
|
||||
unique_together={('name', 'org_id', 'creator')},
|
||||
),
|
||||
]
|
Reference in New Issue
Block a user