Ejemplo n.º 1
0
class Migration(migrations.Migration):

    initial = True

    dependencies = [
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name='AssetFile',
            fields=[
                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
                ('name', models.CharField(max_length=250)),
                ('content', models.FileField(upload_to=assets.models.asset_file_upload_path, validators=[django.core.validators.FileExtensionValidator(allowed_extensions=['mp4', 'mp3'])])),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('owner', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
        ),
        migrations.CreateModel(
            name='AssetFilePart',
            fields=[
                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
                ('content', models.FileField(upload_to=assets.models.asset_file__part_upload_path)),
                ('order', models.PositiveIntegerField()),
                ('created_at', models.DateTimeField(auto_now_add=True)),
                ('asset_file', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='asset_file_parts', to='assets.AssetFile')),
            ],
        ),
    ]
Ejemplo n.º 2
0
class Migration(migrations.Migration):

    dependencies = [
        ('assets', '0017_auto_20170105_1958'),
    ]

    operations = [
        migrations.AddField(
            model_name='component',
            name='thumbnailer_name',
            field=models.CharField(
                blank=True,
                choices=[(b'assets.thumbnailers.ImageThumbnailer',
                          b'assets.thumbnailers.ImageThumbnailer')],
                default=None,
                max_length=64,
                null=True),
        ),
        migrations.AlterField(
            model_name='application',
            name='logo',
            field=models.ImageField(blank=True,
                                    null=True,
                                    upload_to=assets.models.get_logo_path),
        ),
        migrations.AlterField(
            model_name='asset',
            name='data',
            field=models.FileField(upload_to=assets.models.get_data_path,
                                   verbose_name='data file'),
        ),
        migrations.AlterField(
            model_name='asset',
            name='image',
            field=models.ImageField(blank=True,
                                    null=True,
                                    upload_to=assets.models.get_thumbnail_path,
                                    verbose_name='thumbnail'),
        ),
    ]
Ejemplo n.º 3
0
class Migration(migrations.Migration):

    initial = True

    dependencies = []

    operations = [
        migrations.CreateModel(
            name='Asset',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('name', models.CharField(max_length=100)),
                ('file',
                 models.FileField(
                     upload_to=assets.models.upload_asset_location)),
                ('timestamp', models.DateTimeField(auto_now_add=True)),
                ('updated', models.DateTimeField(auto_now=True)),
            ],
        ),
    ]
Ejemplo n.º 4
0
class Migration(migrations.Migration):

    initial = True

    dependencies = []

    operations = [
        migrations.CreateModel(
            name='Asset',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('asset_type',
                 models.CharField(choices=[('server', '服务器'),
                                           ('networkdevice', '网络设备'),
                                           ('storagedevice', '存储设备')],
                                  default='server',
                                  max_length=64,
                                  verbose_name='资产类型')),
                ('name',
                 models.CharField(max_length=64,
                                  unique=True,
                                  verbose_name='资产名称')),
                ('sysname',
                 models.CharField(max_length=64, verbose_name='sysname')),
                ('vender',
                 models.CharField(blank=True,
                                  max_length=32,
                                  null=True,
                                  verbose_name='设备厂商')),
                ('model',
                 models.CharField(blank=True,
                                  max_length=128,
                                  null=True,
                                  verbose_name='设备型号')),
                ('memo',
                 models.TextField(blank=True, null=True, verbose_name='备注')),
                ('c_time',
                 models.DateTimeField(auto_now_add=True, verbose_name='创建日期')),
            ],
            options={
                'verbose_name': '资产总表',
                'verbose_name_plural': '资产总表',
                'ordering': ['-c_time'],
            },
        ),
        migrations.CreateModel(
            name='CableTableFille',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('file',
                 models.FileField(
                     upload_to=assets.models.basefile_directory_path)),
                ('name', models.CharField(max_length=64)),
                ('c_time',
                 models.DateTimeField(auto_now_add=True, verbose_name='创建日期')),
            ],
            options={
                'verbose_name': '布线表',
                'verbose_name_plural': '布线表',
                'ordering': ['-c_time'],
            },
        ),
        migrations.CreateModel(
            name='DescFile',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('file',
                 models.FileField(
                     upload_to=assets.models.descFile_directory_path)),
                ('name', models.CharField(max_length=64)),
                ('c_time',
                 models.DateTimeField(auto_now_add=True, verbose_name='创建日期')),
            ],
            options={
                'verbose_name': '网络设备描述配置',
                'verbose_name_plural': '网络设备描述配置',
                'ordering': ['-c_time'],
            },
        ),
        migrations.CreateModel(
            name='Locate',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('region', models.CharField(max_length=10,
                                            verbose_name='数据中心')),
                ('machine_room',
                 models.CharField(max_length=10, verbose_name='机房')),
                ('cabinet', models.CharField(max_length=2, verbose_name='机柜')),
                ('cabinet_num',
                 models.CharField(max_length=2, verbose_name='机柜号')),
            ],
            options={
                'verbose_name': '设备位置',
                'verbose_name_plural': '设备位置',
            },
        ),
        migrations.CreateModel(
            name='NetworkDevice',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('sub_asset_type',
                 models.SmallIntegerField(choices=[(0, '交换机'), (1, '防火墙'),
                                                   (2, '负载均衡器'), (3, 'SAN交换机'),
                                                   (4, '路由器')],
                                          default=0,
                                          verbose_name='网络设备类型')),
                ('asset',
                 models.OneToOneField(
                     on_delete=django.db.models.deletion.CASCADE,
                     to='assets.Asset')),
            ],
            options={
                'verbose_name': '网络设备',
                'verbose_name_plural': '网络设备',
            },
        ),
        migrations.CreateModel(
            name='Port',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('speed',
                 models.SmallIntegerField(blank=True,
                                          choices=[(1, 'G'), (10, 'XG'),
                                                   (40, '40G'), (100, '100G'),
                                                   (None, None)],
                                          default=None,
                                          null=True,
                                          verbose_name='端口速率')),
                ('chassisNum',
                 models.SmallIntegerField(blank=True,
                                          default=None,
                                          null=True,
                                          verbose_name='机框号')),
                ('slotNum',
                 models.SmallIntegerField(blank=True,
                                          default=None,
                                          null=True,
                                          verbose_name='板卡槽位号')),
                ('subSlotNum',
                 models.SmallIntegerField(blank=True,
                                          default=None,
                                          null=True,
                                          verbose_name='子板卡槽位号')),
                ('portNum', models.CharField(max_length=16,
                                             verbose_name='端口号')),
                ('asset',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to='assets.Asset')),
                ('remotePort',
                 models.OneToOneField(
                     blank=True,
                     null=True,
                     on_delete=django.db.models.deletion.SET_NULL,
                     to='assets.Port')),
            ],
            options={
                'verbose_name': '端口名',
                'verbose_name_plural': '端口名',
            },
        ),
        migrations.CreateModel(
            name='Project',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('name', models.CharField(max_length=20, verbose_name='项目名')),
                ('department',
                 models.CharField(blank=True,
                                  max_length=20,
                                  null=True,
                                  verbose_name='业务归属科室')),
                ('system',
                 models.CharField(blank=True,
                                  max_length=20,
                                  null=True,
                                  verbose_name='所属业务系统')),
                ('module',
                 models.CharField(blank=True,
                                  max_length=20,
                                  null=True,
                                  verbose_name='所属业务模块')),
                ('platform',
                 models.CharField(blank=True,
                                  max_length=20,
                                  null=True,
                                  verbose_name='所属业务平台')),
                ('company',
                 models.CharField(blank=True,
                                  max_length=20,
                                  null=True,
                                  verbose_name='所属业务公司')),
                ('administrator',
                 models.CharField(blank=True,
                                  max_length=32,
                                  null=True,
                                  verbose_name='项目管理员')),
            ],
            options={
                'verbose_name': '项目',
                'verbose_name_plural': '项目',
            },
        ),
        migrations.CreateModel(
            name='Server',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('asset',
                 models.OneToOneField(
                     on_delete=django.db.models.deletion.CASCADE,
                     to='assets.Asset')),
            ],
            options={
                'verbose_name': '服务器',
                'verbose_name_plural': '服务器',
            },
        ),
        migrations.CreateModel(
            name='StorDevice',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('asset',
                 models.OneToOneField(
                     on_delete=django.db.models.deletion.CASCADE,
                     to='assets.Asset')),
            ],
            options={
                'verbose_name': '存储设备',
                'verbose_name_plural': '存储设备',
            },
        ),
        migrations.AddField(
            model_name='descfile',
            name='project',
            field=models.ForeignKey(
                on_delete=django.db.models.deletion.CASCADE,
                to='assets.Project'),
        ),
        migrations.AddField(
            model_name='cabletablefille',
            name='project',
            field=models.ForeignKey(
                on_delete=django.db.models.deletion.CASCADE,
                to='assets.Project'),
        ),
        migrations.AddField(
            model_name='asset',
            name='locate',
            field=models.ForeignKey(
                blank=True,
                null=True,
                on_delete=django.db.models.deletion.CASCADE,
                to='assets.Locate',
                verbose_name='所在位置'),
        ),
        migrations.AddField(
            model_name='asset',
            name='project',
            field=models.ForeignKey(
                blank=True,
                null=True,
                on_delete=django.db.models.deletion.CASCADE,
                to='assets.Project',
                verbose_name='所属项目'),
        ),
        migrations.AlterUniqueTogether(
            name='port',
            unique_together={('asset', 'speed', 'chassisNum', 'slotNum',
                              'subSlotNum', 'portNum')},
        ),
    ]
Ejemplo n.º 5
0
class Migration(migrations.Migration):

    initial = True

    dependencies = [
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name='Asset',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('value', models.CharField(max_length=256, unique=True)),
                ('name', models.CharField(max_length=256)),
                ('type',
                 models.CharField(choices=[('ip', 'ip'),
                                           ('ip-range', 'ip-range'),
                                           ('ip-subnet', 'ip-subnet'),
                                           ('fqdn', 'fqdn'),
                                           ('domain', 'domain'),
                                           ('url', 'url'),
                                           ('keyword', 'keyword'),
                                           ('person', 'person'),
                                           ('organisation', 'organisation'),
                                           ('path', 'path'),
                                           ('application', 'application')],
                                  default='ip',
                                  max_length=15)),
                ('criticity',
                 models.CharField(choices=[('low', 'low'),
                                           ('medium', 'medium'),
                                           ('high', 'high')],
                                  default='low',
                                  max_length=10)),
                ('risk_level',
                 django.contrib.postgres.fields.jsonb.JSONField(
                     default=assets.models.get_default_risk_level)),
                ('description',
                 models.CharField(blank=True, max_length=256, null=True)),
                ('status',
                 models.CharField(blank=True,
                                  default='new',
                                  max_length=30,
                                  null=True)),
                ('created_at',
                 models.DateTimeField(default=django.utils.timezone.now)),
                ('updated_at',
                 models.DateTimeField(default=django.utils.timezone.now)),
            ],
            options={
                'db_table': 'assets',
            },
        ),
        migrations.CreateModel(
            name='AssetCategory',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('value', models.CharField(max_length=256)),
                ('comments',
                 models.CharField(blank=None,
                                  default='n/a',
                                  max_length=256,
                                  null=True)),
                ('parent',
                 models.ForeignKey(blank=None,
                                   default=None,
                                   null=True,
                                   on_delete=django.db.models.deletion.CASCADE,
                                   related_name='children',
                                   to='assets.AssetCategory')),
            ],
            options={
                'verbose_name_plural': 'Asset categories',
                'db_table': 'asset_categories',
                'abstract': False,
            },
        ),
        migrations.CreateModel(
            name='AssetOwnerDocument',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('file', models.FileField(blank=True, null=True,
                                          upload_to='')),
                ('doctitle',
                 models.CharField(blank=True, max_length=256, null=True)),
                ('filename',
                 models.CharField(blank=True, max_length=256, null=True)),
                ('filepath',
                 models.CharField(blank=True, max_length=256, null=True)),
                ('tlp_color',
                 models.CharField(choices=[('red', 'red'), ('amber', 'amber'),
                                           ('green', 'green'),
                                           ('white', 'white')],
                                  default='red',
                                  max_length=10)),
                ('comments',
                 models.CharField(blank=True, max_length=256, null=True)),
                ('created_at',
                 models.DateTimeField(default=django.utils.timezone.now)),
                ('updated_at',
                 models.DateTimeField(default=django.utils.timezone.now)),
                ('owner',
                 models.ForeignKey(
                     null=True,
                     on_delete=django.db.models.deletion.SET_NULL,
                     to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'db_table': 'asset_owner_docs',
            },
        ),
        migrations.CreateModel(
            name='AssetOwnerContact',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('name', models.CharField(max_length=256)),
                ('department',
                 models.CharField(blank=True, max_length=256, null=True)),
                ('title',
                 models.CharField(blank=True, max_length=256, null=True)),
                ('email',
                 models.EmailField(blank=True, max_length=254, null=True)),
                ('phone', models.CharField(blank=True,
                                           max_length=20,
                                           null=True)),
                ('address',
                 models.CharField(blank=True, max_length=256, null=True)),
                ('url', models.URLField(blank=True, null=True)),
                ('comments',
                 models.CharField(blank=True, max_length=256, null=True)),
                ('created_at',
                 models.DateTimeField(default=django.utils.timezone.now)),
                ('updated_at',
                 models.DateTimeField(default=django.utils.timezone.now)),
                ('owner',
                 models.ForeignKey(
                     null=True,
                     on_delete=django.db.models.deletion.SET_NULL,
                     to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'db_table': 'asset_owner_contacts',
            },
        ),
        migrations.CreateModel(
            name='AssetOwner',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('name', models.CharField(max_length=256)),
                ('url', models.URLField(blank=True, null=True)),
                ('comments',
                 models.CharField(blank=True, max_length=256, null=True)),
                ('created_at',
                 models.DateTimeField(default=django.utils.timezone.now)),
                ('updated_at',
                 models.DateTimeField(default=django.utils.timezone.now)),
                ('assets', models.ManyToManyField(to='assets.Asset')),
                ('contacts',
                 models.ManyToManyField(to='assets.AssetOwnerContact')),
                ('documents',
                 models.ManyToManyField(to='assets.AssetOwnerDocument')),
                ('owner',
                 models.ForeignKey(
                     null=True,
                     on_delete=django.db.models.deletion.SET_NULL,
                     to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'db_table': 'asset_owners',
            },
        ),
        migrations.CreateModel(
            name='AssetGroup',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('name', models.CharField(max_length=256, unique=True)),
                ('criticity',
                 models.CharField(choices=[('low', 'low'),
                                           ('medium', 'medium'),
                                           ('high', 'high')],
                                  default='None',
                                  max_length=10)),
                ('risk_level',
                 django.contrib.postgres.fields.jsonb.JSONField(
                     default=assets.models.get_default_risk_level)),
                ('description',
                 models.CharField(blank=True, max_length=256, null=True)),
                ('status',
                 models.CharField(blank=True, max_length=30, null=True)),
                ('created_at',
                 models.DateTimeField(default=django.utils.timezone.now)),
                ('updated_at',
                 models.DateTimeField(default=django.utils.timezone.now)),
                ('assets', models.ManyToManyField(to='assets.Asset')),
                ('categories',
                 models.ManyToManyField(to='assets.AssetCategory')),
                ('owner',
                 models.ForeignKey(
                     null=True,
                     on_delete=django.db.models.deletion.SET_NULL,
                     to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'db_table': 'asset_groups',
            },
        ),
        migrations.AddField(
            model_name='asset',
            name='categories',
            field=models.ManyToManyField(to='assets.AssetCategory'),
        ),
        migrations.AddField(
            model_name='asset',
            name='owner',
            field=models.ForeignKey(
                null=True,
                on_delete=django.db.models.deletion.SET_NULL,
                to=settings.AUTH_USER_MODEL),
        ),
    ]
Ejemplo n.º 6
0
class Migration(migrations.Migration):

    dependencies = [
        ('assets', '0001_initial'),
    ]

    operations = [
        migrations.RemoveField(
            model_name='supplier',
            name='contact',
        ),
        migrations.RemoveField(
            model_name='supplier',
            name='phone',
        ),
        migrations.AddField(
            model_name='service',
            name='backstage',
            field=models.CharField(blank=True,
                                   max_length=128,
                                   null=True,
                                   verbose_name='\u540e\u53f0\u5730\u5740'),
        ),
        migrations.AddField(
            model_name='supplier',
            name='bus_phone',
            field=models.CharField(
                blank=True,
                max_length=20,
                null=True,
                verbose_name='\u4e1a\u52a1\u8054\u7cfb\u4eba\u7535\u8bdd'),
        ),
        migrations.AddField(
            model_name='supplier',
            name='business',
            field=models.CharField(
                blank=True,
                max_length=50,
                null=True,
                verbose_name='\u4e1a\u52a1\u8054\u7cfb\u4eba'),
        ),
        migrations.AddField(
            model_name='supplier',
            name='contract',
            field=models.FileField(blank=True,
                                   null=True,
                                   upload_to=assets.models.contract_dir_path,
                                   verbose_name='\u5408\u540c'),
        ),
        migrations.AddField(
            model_name='supplier',
            name='tec_phone',
            field=models.CharField(
                blank=True,
                max_length=20,
                null=True,
                verbose_name='\u6280\u672f\u8054\u7cfb\u4eba\u7535\u8bdd'),
        ),
        migrations.AddField(
            model_name='supplier',
            name='technical',
            field=models.CharField(
                blank=True,
                max_length=50,
                null=True,
                verbose_name='\u4e1a\u52a1\u8054\u7cfb\u4eba'),
        ),
    ]