mirror of https://github.com/jumpserver/jumpserver
				
				
				
			
		
			
				
	
	
		
			126 lines
		
	
	
		
			7.0 KiB
		
	
	
	
		
			Python
		
	
	
			
		
		
	
	
			126 lines
		
	
	
		
			7.0 KiB
		
	
	
	
		
			Python
		
	
	
# Generated by Django 3.2.14 on 2022-12-28 10:08
 | 
						|
 | 
						|
import uuid
 | 
						|
 | 
						|
import django.db.models.deletion
 | 
						|
from django.db import migrations, models
 | 
						|
 | 
						|
 | 
						|
class Migration(migrations.Migration):
 | 
						|
    dependencies = [
 | 
						|
        ('assets', '0105_auto_20221220_1956'),
 | 
						|
        ('terminal', '0055_auto_20221228_1804'),
 | 
						|
    ]
 | 
						|
 | 
						|
    operations = [
 | 
						|
        migrations.CreateModel(
 | 
						|
            name='Applet',
 | 
						|
            fields=[
 | 
						|
                ('created_by', models.CharField(blank=True, max_length=128, null=True, verbose_name='Created by')),
 | 
						|
                ('updated_by', models.CharField(blank=True, max_length=128, null=True, verbose_name='Updated by')),
 | 
						|
                ('date_created', models.DateTimeField(auto_now_add=True, null=True, verbose_name='Date created')),
 | 
						|
                ('date_updated', models.DateTimeField(auto_now=True, verbose_name='Date updated')),
 | 
						|
                ('id', models.UUIDField(default=uuid.uuid4, primary_key=True, serialize=False)),
 | 
						|
                ('name', models.SlugField(max_length=128, unique=True, verbose_name='Name')),
 | 
						|
                ('display_name', models.CharField(max_length=128, verbose_name='Display name')),
 | 
						|
                ('version', models.CharField(max_length=16, verbose_name='Version')),
 | 
						|
                ('author', models.CharField(max_length=128, verbose_name='Author')),
 | 
						|
                ('type',
 | 
						|
                 models.CharField(choices=[('general', 'General'), ('web', 'Web')], default='general', max_length=16,
 | 
						|
                                  verbose_name='Type')),
 | 
						|
                ('is_active', models.BooleanField(default=True, verbose_name='Is active')),
 | 
						|
                ('builtin', models.BooleanField(default=False, verbose_name='Builtin')),
 | 
						|
                ('protocols', models.JSONField(default=list, verbose_name='Protocol')),
 | 
						|
                ('tags', models.JSONField(default=list, verbose_name='Tags')),
 | 
						|
                ('comment', models.TextField(blank=True, default='', verbose_name='Comment')),
 | 
						|
            ],
 | 
						|
            options={
 | 
						|
                'verbose_name': 'Applet',
 | 
						|
            },
 | 
						|
        ),
 | 
						|
        migrations.CreateModel(
 | 
						|
            name='AppletHost',
 | 
						|
            fields=[
 | 
						|
                ('host_ptr',
 | 
						|
                 models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True,
 | 
						|
                                      primary_key=True, serialize=False, to='assets.host')),
 | 
						|
                ('deploy_options', models.JSONField(default=dict, verbose_name='Deploy options')),
 | 
						|
                ('inited', models.BooleanField(default=False, verbose_name='Inited')),
 | 
						|
                ('date_inited', models.DateTimeField(blank=True, null=True, verbose_name='Date inited')),
 | 
						|
                ('date_synced', models.DateTimeField(blank=True, null=True, verbose_name='Date synced')),
 | 
						|
            ],
 | 
						|
            options={
 | 
						|
                'verbose_name': 'Applet host',
 | 
						|
            },
 | 
						|
            bases=('assets.host',),
 | 
						|
        ),
 | 
						|
        migrations.CreateModel(
 | 
						|
            name='AppletPublication',
 | 
						|
            fields=[
 | 
						|
                ('created_by', models.CharField(blank=True, max_length=128, null=True, verbose_name='Created by')),
 | 
						|
                ('updated_by', models.CharField(blank=True, max_length=128, null=True, verbose_name='Updated by')),
 | 
						|
                ('date_created', models.DateTimeField(auto_now_add=True, null=True, verbose_name='Date created')),
 | 
						|
                ('date_updated', models.DateTimeField(auto_now=True, verbose_name='Date updated')),
 | 
						|
                ('id', models.UUIDField(default=uuid.uuid4, primary_key=True, serialize=False)),
 | 
						|
                ('status', models.CharField(default='pending', max_length=16, verbose_name='Status')),
 | 
						|
                ('comment', models.TextField(blank=True, default='', verbose_name='Comment')),
 | 
						|
                ('applet', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='publications',
 | 
						|
                                             to='terminal.applet', verbose_name='Applet')),
 | 
						|
                ('host', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='publications',
 | 
						|
                                           to='terminal.applethost', verbose_name='Host')),
 | 
						|
            ],
 | 
						|
            options={
 | 
						|
                'unique_together': {('applet', 'host')},
 | 
						|
            },
 | 
						|
        ),
 | 
						|
        migrations.CreateModel(
 | 
						|
            name='AppletHostDeployment',
 | 
						|
            fields=[
 | 
						|
                ('created_by', models.CharField(blank=True, max_length=128, null=True, verbose_name='Created by')),
 | 
						|
                ('updated_by', models.CharField(blank=True, max_length=128, null=True, verbose_name='Updated by')),
 | 
						|
                ('date_created', models.DateTimeField(auto_now_add=True, null=True, verbose_name='Date created')),
 | 
						|
                ('date_updated', models.DateTimeField(auto_now=True, verbose_name='Date updated')),
 | 
						|
                ('id', models.UUIDField(default=uuid.uuid4, primary_key=True, serialize=False)),
 | 
						|
                ('initial', models.BooleanField(default=False, verbose_name='Initial')),
 | 
						|
                ('status', models.CharField(default='pending', max_length=16, verbose_name='Status')),
 | 
						|
                ('date_start', models.DateTimeField(db_index=True, null=True, verbose_name='Date start')),
 | 
						|
                ('date_finished', models.DateTimeField(null=True, verbose_name='Date finished')),
 | 
						|
                ('comment', models.TextField(blank=True, default='', verbose_name='Comment')),
 | 
						|
                ('task', models.UUIDField(null=True, verbose_name='Task')),
 | 
						|
                ('host', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='terminal.applethost',
 | 
						|
                                           verbose_name='Hosting')),
 | 
						|
            ],
 | 
						|
            options={
 | 
						|
                'ordering': ('-date_start',),
 | 
						|
            },
 | 
						|
        ),
 | 
						|
        migrations.AddField(
 | 
						|
            model_name='applethost',
 | 
						|
            name='applets',
 | 
						|
            field=models.ManyToManyField(through='terminal.AppletPublication', to='terminal.Applet',
 | 
						|
                                         verbose_name='Applet'),
 | 
						|
        ),
 | 
						|
        migrations.AddField(
 | 
						|
            model_name='applethost',
 | 
						|
            name='terminal',
 | 
						|
            field=models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT,
 | 
						|
                                       related_name='applet_host', to='terminal.terminal', verbose_name='Terminal'),
 | 
						|
        ),
 | 
						|
        migrations.AddField(
 | 
						|
            model_name='applet',
 | 
						|
            name='hosts',
 | 
						|
            field=models.ManyToManyField(through='terminal.AppletPublication', to='terminal.AppletHost',
 | 
						|
                                         verbose_name='Hosts'),
 | 
						|
        ),
 | 
						|
        migrations.AlterField(
 | 
						|
            model_name='appletpublication',
 | 
						|
            name='applet',
 | 
						|
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='publications', to='terminal.applet', verbose_name='Applet'),
 | 
						|
        ),
 | 
						|
        migrations.AlterField(
 | 
						|
            model_name='appletpublication',
 | 
						|
            name='host',
 | 
						|
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='publications', to='terminal.applethost', verbose_name='Host'),
 | 
						|
        ),
 | 
						|
    ]
 |