Files
mdb/mdb/migrations/0001_initial.py
T

382 lines
16 KiB
Python

# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models, migrations
import re
import django.core.validators
class Migration(migrations.Migration):
dependencies = [
]
operations = [
migrations.CreateModel(
name='DhcpConfig',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('serial', models.IntegerField()),
('active_serial', models.IntegerField()),
('name', models.CharField(max_length=255)),
('authoritative', models.BooleanField(default=False)),
('ddns_update_style', models.CharField(max_length=63)),
('default_lease_time', models.IntegerField(default=600)),
('max_lease_time', models.IntegerField(default=7200)),
('log_facility', models.CharField(max_length=255)),
],
options={
'verbose_name': 'DHCP config',
},
bases=(models.Model,),
),
migrations.CreateModel(
name='DhcpCustomField',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('value', models.CharField(max_length=255)),
],
options={
},
bases=(models.Model,),
),
migrations.CreateModel(
name='DhcpOption',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('key', models.CharField(max_length=255)),
('value', models.CharField(max_length=255)),
],
options={
'verbose_name': 'DHCP option',
},
bases=(models.Model,),
),
migrations.CreateModel(
name='Domain',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('domain_name', models.CharField(max_length=256)),
('domain_soa', models.CharField(max_length=256)),
('domain_ttl', models.IntegerField(default=60)),
('domain_serial', models.IntegerField(default=1)),
('domain_active_serial', models.IntegerField(default=0, editable=False)),
('domain_refresh', models.IntegerField(default=28800)),
('domain_retry', models.IntegerField(default=7200)),
('domain_expire', models.IntegerField(default=604800)),
('domain_minimum_ttl', models.IntegerField(default=86400)),
('domain_admin', models.EmailField(max_length=75)),
('domain_ipaddr', models.IPAddressField()),
('domain_filename', models.CharField(max_length=256)),
('created_date', models.DateTimeField(auto_now_add=True)),
],
options={
},
bases=(models.Model,),
),
migrations.CreateModel(
name='DomainARecord',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('name', models.CharField(max_length=256)),
('target', models.CharField(max_length=256)),
('created_date', models.DateTimeField(auto_now_add=True)),
('domain', models.ForeignKey(to='mdb.Domain')),
],
options={
},
bases=(models.Model,),
),
migrations.CreateModel(
name='DomainCnameRecord',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('name', models.CharField(max_length=256)),
('target', models.CharField(max_length=256)),
('created_date', models.DateTimeField(auto_now_add=True)),
('domain', models.ForeignKey(to='mdb.Domain')),
],
options={
},
bases=(models.Model,),
),
migrations.CreateModel(
name='DomainSrvRecord',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('srvce', models.CharField(max_length=64)),
('prot', models.CharField(max_length=64)),
('name', models.CharField(max_length=128)),
('priority', models.IntegerField()),
('weight', models.IntegerField()),
('port', models.IntegerField()),
('target', models.CharField(max_length=256)),
('created_date', models.DateTimeField(auto_now_add=True)),
('domain', models.ForeignKey(to='mdb.Domain')),
],
options={
},
bases=(models.Model,),
),
migrations.CreateModel(
name='DomainTxtRecord',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('name', models.CharField(max_length=256)),
('target', models.CharField(max_length=256)),
('created_date', models.DateTimeField(auto_now_add=True)),
('domain', models.ForeignKey(to='mdb.Domain')),
],
options={
},
bases=(models.Model,),
),
migrations.CreateModel(
name='Host',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('location', models.CharField(max_length=1024)),
('brand', models.CharField(max_length=1024)),
('model', models.CharField(max_length=1024)),
('owner', models.CharField(max_length=1024)),
('hostname', models.CharField(max_length=64, validators=[django.core.validators.RegexValidator(re.compile(b'^(?!-)[-a-z0-9]+(?<!-)$', 2), 'Enter a valid hostname', b'invalid')])),
('serial_number', models.CharField(max_length=256)),
('description', models.CharField(max_length=1024)),
('created_date', models.DateTimeField(auto_now_add=True)),
('virtual', models.BooleanField(default=False)),
('request_kerberos_principal', models.BooleanField(default=False)),
('kerberos_principal_created', models.BooleanField(default=False, editable=False)),
('kerberos_principal_name', models.CharField(max_length=256, editable=False)),
('kerberos_principal_created_date', models.DateTimeField(null=True, editable=False, blank=True)),
],
options={
},
bases=(models.Model,),
),
migrations.CreateModel(
name='HostType',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('host_type', models.CharField(max_length=64)),
('description', models.CharField(max_length=1024)),
],
options={
'ordering': ('host_type',),
},
bases=(models.Model,),
),
migrations.CreateModel(
name='Interface',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('name', models.CharField(max_length=128)),
('macaddr', models.CharField(max_length=17)),
('pxe_filename', models.CharField(max_length=64, blank=True)),
('dhcp_client', models.BooleanField(default=False)),
('created_date', models.DateTimeField(auto_now_add=True)),
('domain', models.ForeignKey(to='mdb.Domain')),
('host', models.ForeignKey(to='mdb.Host')),
],
options={
},
bases=(models.Model,),
),
migrations.CreateModel(
name='Ip4Address',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('address', models.IPAddressField()),
('last_contact', models.DateTimeField()),
('ping_avg_rtt', models.FloatField()),
],
options={
'verbose_name': 'IPv4 address',
'verbose_name_plural': 'IPv4 addresses',
},
bases=(models.Model,),
),
migrations.CreateModel(
name='Ip4Subnet',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('name', models.CharField(max_length=256)),
('netmask', models.IPAddressField()),
('network', models.IPAddressField()),
('created_date', models.DateTimeField(auto_now_add=True)),
('domain_name', models.CharField(max_length=255, editable=False)),
('domain_soa', models.CharField(max_length=256)),
('domain_ttl', models.IntegerField(default=60)),
('domain_serial', models.IntegerField(default=1)),
('domain_active_serial', models.IntegerField(default=0, editable=False)),
('domain_refresh', models.IntegerField(default=28800)),
('domain_retry', models.IntegerField(default=7200)),
('domain_expire', models.IntegerField(default=604800)),
('domain_minimum_ttl', models.IntegerField(default=86400)),
('domain_admin', models.EmailField(max_length=75)),
('domain_filename', models.CharField(max_length=256)),
('dhcp_dynamic', models.BooleanField(default=False)),
('dhcp_dynamic_start', models.IPAddressField(null=True, blank=True)),
('dhcp_dynamic_end', models.IPAddressField(null=True, blank=True)),
('dhcp_config', models.ForeignKey(to='mdb.DhcpConfig')),
],
options={
'verbose_name': 'IPv4 subnet',
},
bases=(models.Model,),
),
migrations.CreateModel(
name='Ip6Address',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('address', models.CharField(max_length=64)),
('interface', models.ForeignKey(to='mdb.Interface')),
],
options={
'verbose_name': 'IPv6 address',
'verbose_name_plural': 'IPv6 addresses',
},
bases=(models.Model,),
),
migrations.CreateModel(
name='Ip6Subnet',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('name', models.CharField(max_length=255)),
('network', models.CharField(max_length=255)),
('netmask', models.IntegerField(default=64)),
('created_date', models.DateTimeField(auto_now_add=True)),
('domain_name', models.CharField(max_length=255, editable=False)),
('domain_soa', models.CharField(max_length=255)),
('domain_ttl', models.IntegerField(default=60)),
('domain_serial', models.IntegerField(default=1)),
('domain_active_serial', models.IntegerField(default=0, editable=False)),
('domain_refresh', models.IntegerField(default=28800)),
('domain_retry', models.IntegerField(default=7200)),
('domain_expire', models.IntegerField(default=604800)),
('domain_minimum_ttl', models.IntegerField(default=86400)),
('domain_admin', models.EmailField(max_length=75)),
('domain_filename', models.CharField(max_length=256)),
],
options={
'verbose_name': 'IPv6 subnet',
},
bases=(models.Model,),
),
migrations.CreateModel(
name='MailExchange',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('priority', models.IntegerField()),
('hostname', models.CharField(max_length=256)),
],
options={
},
bases=(models.Model,),
),
migrations.CreateModel(
name='Nameserver',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('hostname', models.CharField(max_length=256)),
],
options={
},
bases=(models.Model,),
),
migrations.CreateModel(
name='OperatingSystem',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('name', models.CharField(max_length=256)),
('version', models.CharField(max_length=64)),
],
options={
'ordering': ('name', 'version'),
},
bases=(models.Model,),
),
migrations.CreateModel(
name='OsArchitecture',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('architecture', models.CharField(max_length=64)),
],
options={
'verbose_name': 'OS architecture',
},
bases=(models.Model,),
),
migrations.AddField(
model_name='operatingsystem',
name='architecture',
field=models.ForeignKey(to='mdb.OsArchitecture'),
preserve_default=True,
),
migrations.AddField(
model_name='ip6subnet',
name='domain_nameservers',
field=models.ManyToManyField(to='mdb.Nameserver'),
preserve_default=True,
),
migrations.AddField(
model_name='ip6address',
name='subnet',
field=models.ForeignKey(to='mdb.Ip6Subnet'),
preserve_default=True,
),
migrations.AddField(
model_name='ip4subnet',
name='domain_nameservers',
field=models.ManyToManyField(to='mdb.Nameserver'),
preserve_default=True,
),
migrations.AddField(
model_name='ip4address',
name='subnet',
field=models.ForeignKey(to='mdb.Ip4Subnet'),
preserve_default=True,
),
migrations.AddField(
model_name='interface',
name='ip4address',
field=models.ForeignKey(null=True, blank=True, to='mdb.Ip4Address', unique=True),
preserve_default=True,
),
migrations.AddField(
model_name='host',
name='host_type',
field=models.ForeignKey(to='mdb.HostType'),
preserve_default=True,
),
migrations.AddField(
model_name='host',
name='operating_system',
field=models.ForeignKey(to='mdb.OperatingSystem'),
preserve_default=True,
),
migrations.AddField(
model_name='domain',
name='domain_mailexchanges',
field=models.ManyToManyField(to='mdb.MailExchange'),
preserve_default=True,
),
migrations.AddField(
model_name='domain',
name='domain_nameservers',
field=models.ManyToManyField(to='mdb.Nameserver'),
preserve_default=True,
),
migrations.AddField(
model_name='dhcpoption',
name='ip4subnet',
field=models.ForeignKey(to='mdb.Ip4Subnet'),
preserve_default=True,
),
migrations.AddField(
model_name='dhcpcustomfield',
name='ip4subnet',
field=models.ForeignKey(to='mdb.Ip4Subnet'),
preserve_default=True,
),
]