1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Introduce ConfigItem; add rack elevation parameters

This commit is contained in:
jeremystretch
2021-10-26 10:04:56 -04:00
parent 82243732a1
commit 7c0f32e8ee
11 changed files with 58 additions and 50 deletions

View File

@@ -1,10 +1,9 @@
import netaddr
from django.conf import settings
from django.contrib.contenttypes.fields import GenericForeignKey
from django.contrib.contenttypes.models import ContentType
from django.core.exceptions import ValidationError
from django.db import models
from django.db.models import F, Q
from django.db.models import F
from django.urls import reverse
from django.utils.functional import cached_property
@@ -17,7 +16,7 @@ from ipam.fields import IPNetworkField, IPAddressField
from ipam.managers import IPAddressManager
from ipam.querysets import PrefixQuerySet
from ipam.validators import DNSValidator
from netbox.config import ConfigResolver
from netbox.config import Config
from utilities.querysets import RestrictedQuerySet
from virtualization.models import VirtualMachine
@@ -317,8 +316,7 @@ class Prefix(PrimaryModel):
})
# Enforce unique IP space (if applicable)
config = ConfigResolver()
if (self.vrf is None and config.ENFORCE_GLOBAL_UNIQUE) or (self.vrf and self.vrf.enforce_unique):
if (self.vrf is None and Config().ENFORCE_GLOBAL_UNIQUE) or (self.vrf and self.vrf.enforce_unique):
duplicate_prefixes = self.get_duplicates()
if duplicate_prefixes:
raise ValidationError({
@@ -813,8 +811,7 @@ class IPAddress(PrimaryModel):
})
# Enforce unique IP space (if applicable)
config = ConfigResolver()
if (self.vrf is None and config.ENFORCE_GLOBAL_UNIQUE) or (self.vrf and self.vrf.enforce_unique):
if (self.vrf is None and Config().ENFORCE_GLOBAL_UNIQUE) or (self.vrf and self.vrf.enforce_unique):
duplicate_ips = self.get_duplicates()
if duplicate_ips and (
self.role not in IPADDRESS_ROLES_NONUNIQUE or