# -*- coding: utf-8 -*- # Generated by Django 1.9.1 on 2016-02-27 02:35 from __future__ import unicode_literals import django.core.validators from django.db import migrations, models import django.db.models.deletion import ipam.fields class Migration(migrations.Migration): initial = True dependencies = [ ('dcim', '0001_initial'), ] operations = [ migrations.CreateModel( name='Aggregate', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('family', models.PositiveSmallIntegerField(choices=[(4, b'IPv4'), (6, b'IPv6')])), ('prefix', ipam.fields.IPNetworkField()), ('date_added', models.DateField(blank=True, null=True)), ('description', models.CharField(blank=True, max_length=100)), ], options={ 'ordering': ['family', 'prefix'], }, ), migrations.CreateModel( name='IPAddress', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('family', models.PositiveSmallIntegerField(choices=[(4, b'IPv4'), (6, b'IPv6')], editable=False)), ('address', ipam.fields.IPAddressField()), ('description', models.CharField(blank=True, max_length=100)), ('interface', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='ip_addresses', to='dcim.Interface')), ('nat_inside', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='nat_outside', to='ipam.IPAddress', verbose_name=b'NAT IP (inside)')), ], options={ 'ordering': ['family', 'address'], 'verbose_name': 'IP address', 'verbose_name_plural': 'IP addresses', }, ), migrations.CreateModel( name='Prefix', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('family', models.PositiveSmallIntegerField(choices=[(4, b'IPv4'), (6, b'IPv6')], editable=False)), ('prefix', ipam.fields.IPNetworkField()), ('description', models.CharField(blank=True, max_length=100)), ], options={ 'ordering': ['family', 'prefix'], 'verbose_name_plural': 'prefixes', }, ), migrations.CreateModel( name='RIR', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=50, unique=True)), ('slug', models.SlugField(unique=True)), ], options={ 'ordering': ['name'], 'verbose_name': 'RIR', 'verbose_name_plural': 'RIRs', }, ), migrations.CreateModel( name='Role', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=50, unique=True)), ('slug', models.SlugField(unique=True)), ('weight', models.PositiveSmallIntegerField(default=1000)), ], options={ 'ordering': ['weight', 'name'], }, ), migrations.CreateModel( name='Status', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=50, unique=True)), ('slug', models.SlugField(unique=True)), ('weight', models.PositiveSmallIntegerField(default=1000)), ('bootstrap_class', models.PositiveSmallIntegerField(choices=[(0, b'Default'), (1, b'Primary'), (2, b'Success'), (3, b'Info'), (4, b'Warning'), (5, b'Danger')], default=0)), ], options={ 'ordering': ['weight', 'name'], 'verbose_name_plural': 'statuses', }, ), migrations.CreateModel( name='VLAN', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('vid', models.PositiveSmallIntegerField(validators=[django.core.validators.MinValueValidator(1), django.core.validators.MaxValueValidator(4094)], verbose_name=b'ID')), ('name', models.CharField(max_length=30)), ('role', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='vlans', to='ipam.Role')), ('site', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='vlans', to='dcim.Site')), ('status', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='vlans', to='ipam.Status')), ], options={ 'ordering': ['site', 'vid'], 'verbose_name': 'VLAN', 'verbose_name_plural': 'VLANs', }, ), migrations.CreateModel( name='VRF', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=50)), ('rd', models.CharField(max_length=21, unique=True, verbose_name=b'Route distinguisher')), ('description', models.CharField(blank=True, max_length=100)), ], options={ 'ordering': ['name'], 'verbose_name': 'VRF', 'verbose_name_plural': 'VRFs', }, ), migrations.AddField( model_name='prefix', name='role', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='prefixes', to='ipam.Role'), ), migrations.AddField( model_name='prefix', name='site', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='prefixes', to='dcim.Site'), ), migrations.AddField( model_name='prefix', name='status', field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='prefixes', to='ipam.Status'), ), migrations.AddField( model_name='prefix', name='vlan', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='prefixes', to='ipam.VLAN', verbose_name=b'VLAN'), ), migrations.AddField( model_name='prefix', name='vrf', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='prefixes', to='ipam.VRF', verbose_name=b'VRF'), ), migrations.AddField( model_name='ipaddress', name='vrf', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='ip_addresses', to='ipam.VRF', verbose_name=b'VRF'), ), migrations.AddField( model_name='aggregate', name='rir', field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='aggregates', to='ipam.RIR', verbose_name=b'RIR'), ), ]