mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-29 11:56:25 -06:00
ipam squashed 0026-to-0032 migration was breaking old db
This commit is contained in:
parent
d8cb58c746
commit
0a64463ccc
@ -1,140 +0,0 @@
|
||||
import django.core.validators
|
||||
from django.db import migrations, models
|
||||
import django.db.models.expressions
|
||||
|
||||
PREFIX_STATUS_CHOICES = (
|
||||
(0, 'container'),
|
||||
(1, 'active'),
|
||||
(2, 'reserved'),
|
||||
(3, 'deprecated'),
|
||||
)
|
||||
|
||||
IPADDRESS_STATUS_CHOICES = (
|
||||
(0, 'container'),
|
||||
(1, 'active'),
|
||||
(2, 'reserved'),
|
||||
(3, 'deprecated'),
|
||||
)
|
||||
|
||||
IPADDRESS_ROLE_CHOICES = (
|
||||
(10, 'loopback'),
|
||||
(20, 'secondary'),
|
||||
(30, 'anycast'),
|
||||
(40, 'vip'),
|
||||
(41, 'vrrp'),
|
||||
(42, 'hsrp'),
|
||||
(43, 'glbp'),
|
||||
(44, 'carp'),
|
||||
)
|
||||
|
||||
VLAN_STATUS_CHOICES = (
|
||||
(1, 'active'),
|
||||
(2, 'reserved'),
|
||||
(3, 'deprecated'),
|
||||
)
|
||||
|
||||
SERVICE_PROTOCOL_CHOICES = (
|
||||
(6, 'tcp'),
|
||||
(17, 'udp'),
|
||||
)
|
||||
|
||||
|
||||
def prefix_status_to_slug(apps, schema_editor):
|
||||
Prefix = apps.get_model('ipam', 'Prefix')
|
||||
for id, slug in PREFIX_STATUS_CHOICES:
|
||||
Prefix.objects.filter(status=str(id)).update(status=slug)
|
||||
|
||||
|
||||
def ipaddress_status_to_slug(apps, schema_editor):
|
||||
IPAddress = apps.get_model('ipam', 'IPAddress')
|
||||
for id, slug in IPADDRESS_STATUS_CHOICES:
|
||||
IPAddress.objects.filter(status=str(id)).update(status=slug)
|
||||
|
||||
|
||||
def ipaddress_role_to_slug(apps, schema_editor):
|
||||
IPAddress = apps.get_model('ipam', 'IPAddress')
|
||||
for id, slug in IPADDRESS_ROLE_CHOICES:
|
||||
IPAddress.objects.filter(role=str(id)).update(role=slug)
|
||||
|
||||
|
||||
def vlan_status_to_slug(apps, schema_editor):
|
||||
VLAN = apps.get_model('ipam', 'VLAN')
|
||||
for id, slug in VLAN_STATUS_CHOICES:
|
||||
VLAN.objects.filter(status=str(id)).update(status=slug)
|
||||
|
||||
|
||||
def service_protocol_to_slug(apps, schema_editor):
|
||||
Service = apps.get_model('ipam', 'Service')
|
||||
for id, slug in SERVICE_PROTOCOL_CHOICES:
|
||||
Service.objects.filter(protocol=str(id)).update(protocol=slug)
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
replaces = [('ipam', '0026_prefix_ordering_vrf_nulls_first'), ('ipam', '0027_ipaddress_add_dns_name'), ('ipam', '0028_3569_prefix_fields'), ('ipam', '0029_3569_ipaddress_fields'), ('ipam', '0030_3569_vlan_fields'), ('ipam', '0031_3569_service_fields'), ('ipam', '0032_role_description')]
|
||||
|
||||
dependencies = [
|
||||
('ipam', '0025_custom_tag_models'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterModelOptions(
|
||||
name='prefix',
|
||||
options={'ordering': [django.db.models.expressions.OrderBy(django.db.models.expressions.F('vrf'), nulls_first=True), 'family', 'prefix'], 'verbose_name_plural': 'prefixes'},
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='ipaddress',
|
||||
name='dns_name',
|
||||
field=models.CharField(blank=True, max_length=255, validators=[django.core.validators.RegexValidator(code='invalid', message='Only alphanumeric characters, hyphens, periods, and underscores are allowed in DNS names', regex='^[0-9A-Za-z._-]+$')]),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='prefix',
|
||||
name='status',
|
||||
field=models.CharField(default='active', max_length=50),
|
||||
),
|
||||
migrations.RunPython(
|
||||
code=prefix_status_to_slug,
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='ipaddress',
|
||||
name='status',
|
||||
field=models.CharField(default='active', max_length=50),
|
||||
),
|
||||
migrations.RunPython(
|
||||
code=ipaddress_status_to_slug,
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='ipaddress',
|
||||
name='role',
|
||||
field=models.CharField(blank=True, default='', max_length=50),
|
||||
),
|
||||
migrations.RunPython(
|
||||
code=ipaddress_role_to_slug,
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='ipaddress',
|
||||
name='role',
|
||||
field=models.CharField(blank=True, max_length=50),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='vlan',
|
||||
name='status',
|
||||
field=models.CharField(default='active', max_length=50),
|
||||
),
|
||||
migrations.RunPython(
|
||||
code=vlan_status_to_slug,
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='service',
|
||||
name='protocol',
|
||||
field=models.CharField(max_length=50),
|
||||
),
|
||||
migrations.RunPython(
|
||||
code=service_protocol_to_slug,
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='role',
|
||||
name='description',
|
||||
field=models.CharField(blank=True, max_length=100),
|
||||
),
|
||||
]
|
Loading…
Reference in New Issue
Block a user