Move from hard-coded CatalogZone SOA values (refresh, retry, expire and minimum)

to DB driven to permit user modification:

modified:   netbox_dns_bridge/models.py
  Add 4 cols for values.

modified:   netbox_dns_bridge/migrations/0003_catalogzone_and_per_zone_identifier.py
  Adjust migration. This expects that the last migration the user has is 0002 (<=v1.5.8)

modified:   netbox_dns_bridge/jobs/notify.py
modified:   netbox_dns_bridge/management/commands/dns_transfer_endpoint/catalog_zone_manager.py
  Update to use new db values for SOA creation.

Change UI to permit editing for SOA values and disable member identifier editing.
modified:   netbox_dns_bridge/forms.py
modified:   netbox_dns_bridge/navigation.py
new file:   netbox_dns_bridge/templates/netbox_dns_bridge/catalog_zone_edit.html
new file:   netbox_dns_bridge/templates/netbox_dns_bridge/catalog_zone_list.html
new file:   netbox_dns_bridge/templates/netbox_dns_bridge/catalog_zone_members.html
deleted:    netbox_dns_bridge/templates/netbox_dns_bridge/catz_overview.html
modified:   netbox_dns_bridge/tables.py
modified:   netbox_dns_bridge/urls.py
modified:   netbox_dns_bridge/views.py
modified:   netbox_dns_bridge/filtersets.py
  GUI components are entirely AI generated. Plumbing also with AI assist but code verified.
This commit is contained in:
sven authored and Sven Luthi committed 2026-09-02 12:05:21 +02:00
1 parent 69781e2b08
commit a3f53767e4
14 files changed
+209 -63

No files matched your search

@@ -0,0 +1,4 @@
{% extends 'generic/object_edit.html' %}
{% load i18n %}
{% block title %}{% trans "Edit Catalog Zone" %}{% endblock %}
@@ -0,0 +1,4 @@
{% extends 'generic/object_list.html' %}
{% load i18n %}
{% block title %}{% trans "Catalog Zones" %}{% endblock %}
@@ -0,0 +1,4 @@
{% extends 'generic/object_list.html' %}
{% load i18n %}
{% block title %}{% trans "Catalog Zone Members" %}{% endblock %}
@@ -1,37 +0,0 @@
{% extends 'generic/object_list.html' %}
{% load i18n %}
{% block title %}{% trans "Catalog Zone Info" %}{% endblock %}
{% block content %}
<div class="row mb-3">
<div class="col-md-12">
<div class="card">
<h5 class="card-header">{% trans "Catalog Zone SOA Serial Numbers" %}</h5>
<div class="card-body">
{% if catalog_zones %}
<table class="table table-sm">
<thead>
<tr>
<th>{% trans "View" %}</th>
<th>{% trans "SOA Serial" %}</th>
</tr>
</thead>
<tbody>
{% for cz in catalog_zones %}
<tr>
<td>{{ cz.view.name }}</td>
<td>{{ cz.soa_serial }}</td>
</tr>
{% endfor %}
</tbody>
</table>
{% else %}
<span class="text-muted">{% trans "No catalog zones initialized." %}</span>
{% endif %}
</div>
</div>
</div>
</div>
{{ block.super }}
{% endblock %}