mirror of https://github.com/jumpserver/jumpserver
72 lines
2.5 KiB
Python
72 lines
2.5 KiB
Python
# 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 = [
|
|
('ops', '0023_auto_20220912_0021'),
|
|
]
|
|
|
|
operations = [
|
|
migrations.AlterField(
|
|
model_name='celerytask',
|
|
name='date_last_publish',
|
|
field=models.DateTimeField(null=True, verbose_name='Date last publish'),
|
|
),
|
|
migrations.AlterField(
|
|
model_name='celerytaskexecution',
|
|
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.DeleteModel(
|
|
name='JobAuditLog',
|
|
),
|
|
migrations.RunPython(compatible),
|
|
]
|