modified: netbox_dns_bridge/__init__.py

modified:   netbox_dns_bridge/catalog_zone_manager.py
Fix wrong import in previous version and slight change to
meachanism to create catz member identifier.
This commit is contained in:
Sven Luthi committed 2026-07-15 17:48:49 +02:00
1 parent e50cfd7cb6
commit 41d48f2807
2 files changed
+8 -13

No files matched your search

+1 -1
View File
@@ -2,7 +2,7 @@ from netbox.plugins import PluginConfig
from django.conf import settings from django.conf import settings
from .logger import get_logger from .logger import get_logger
__version__ = "1.5.5" __version__ = "1.5.6"
LOGGER = get_logger(__name__) LOGGER = get_logger(__name__)
+7 -12
View File
@@ -3,16 +3,11 @@ import dns.zone
import dns.rdatatype import dns.rdatatype
import dns.rdataclass import dns.rdataclass
from .logger import get_logger from .logger import get_logger
from netbox_dns.models import Zone from netbox_dns.models import Zone as NBZone
from netbox_dns_bridge.models import IntegerKeyValueSetting, CatalogZoneMemberIdentifier from netbox_dns_bridge.models import IntegerKeyValueSetting, CatalogZoneMemberIdentifier
from uuid import uuid4 from uuid import uuid4
from base64 import b32encode from base64 import b32encode
from django.db import ( from django.db import transaction, close_old_connections, OperationalError
transaction,
close_old_connections,
OperationalError,
RelatedObjectDoesNotExist
)
LOGGER = get_logger(__name__) LOGGER = get_logger(__name__)
@@ -58,7 +53,7 @@ def create_zone(name, view_name) -> dns.zone.Zone:
try: try:
# get zones from netbox # get zones from netbox
nb_zones = Zone.objects.filter( nb_zones = NBZone.objects.filter(
view__name=view_name, active=True view__name=view_name, active=True
).select_related("catz_identifier") ).select_related("catz_identifier")
@@ -71,9 +66,9 @@ def create_zone(name, view_name) -> dns.zone.Zone:
# Create PTR record # Create PTR record
try: try:
catz_identifier = nb_zone.catz_identifier catz_identifier = nb_zone.catz_identifier
except RelatedObjectDoesNotExist: except NBZone.catz_identifier.RelatedObjectDoesNotExist:
catz_identifier = nb_zone.catz_identifier.create( catz_identifier = CatalogZoneMemberIdentifier.objects.create(
name=_generate_member_identifier() zone=nb_zone, name=_generate_member_identifier()
) )
p_name = catz_identifier.name p_name = catz_identifier.name
@@ -129,7 +124,7 @@ def _generate_member_identifier() -> str:
return b32encode(uuid4().bytes)[0:26].lower().decode("UTF-8") return b32encode(uuid4().bytes)[0:26].lower().decode("UTF-8")
def update_member_identifier(zone: Zone) -> None: def update_member_identifier(zone: NBZone) -> None:
try: try:
CatalogZoneMemberIdentifier.objects.update_or_create( CatalogZoneMemberIdentifier.objects.update_or_create(
zone=zone, zone=zone,