Files
netbox-plugin-dns-bridge/CHANGELOG.md
T
sven 6d4fb82ac5 modified: CHANGELOG.md
new file:   netbox_dns_bridge/jobs/__init__.py
renamed:    netbox_dns_bridge/signals/notify_handler.py -> netbox_dns_bridge/jobs/notify.py
modified:   netbox_dns_bridge/management/commands/dns_transfer_endpoint/catalog_zone_manager.py
modified:   netbox_dns_bridge/signals/netbox_dns_zones.py
Restructuring
2026-09-02 12:02:55 +02:00

3.2 KiB

Unreleased

  • Move notify_handler from signals/ to jobs/ and rename to notify.
  • Rename SendClientDNSNotify to SendClientNotify. It now sends a single NOTIFY for the zone only; catalog zone entries (catz, {view}.catz) have been removed.
  • Catalog zone NOTIFY is now scheduled by increment_soa_serial via schedule_catalog_zone_notify, which enqueues SendClientNotify for catz and {view}.catz — no separate job class needed.
  • Extract a shared _send_notify helper used by both SendClientNotify and SendNSNotify for message building and the send loop.
  • Move all NOTIFY scheduling gates (notify_clients, notify_ns_all_zones, custom field) into the scheduling functions. The signal handler calls the scheduling functions unconditionally; each function decides whether to enqueue based on its own settings gate.
  • Replace the global IntegerKeyValueSetting model (single catalog-zone-soa-serial value shared by all catalog zones) with a new CatalogZone model that has a 1:1 foreign key to netbox_dns.models.View and its own soa_serial field. Each view's catalog zone now tracks and increments its SOA serial independently. Existing serials are preserved during migration by copying the old global value into every view's new CatalogZone row.
  • Change the CatalogZoneMemberIdentifier.name uniqueness from globally unique to unique per catalog zone (UniqueConstraint(name, catalog_zone)). A catalog_zone foreign key has been added to the identifier model to enforce this.
  • Remove the dns-settings management command, which was a generic get/set/list interface over IntegerKeyValueSetting (now removed).
  • Defer the catalog zone SOA serial increment on zone deletion to transaction.on_commit, matching the create/modify path. Previously the increment ran immediately at post_delete time, so a rollback of the delete transaction would have left the catalog serial bumped anyway.
  • Add the option to send a NOTIFY directly to a zone's own nameservers when its SOA serial number changes. Enable it per zone via a boolean custom field named by notify_ns_custom_field_name, globally for all zones via notify_ns_all_zones (default False), or both. Nameserver addresses are resolved from NetBox DNS A/AAAA records within the zone's view and the NOTIFY is signed with the per-view TSIG key. A companion notify_ns_port setting (default 53) controls the destination port.

1.0.7 - 2026-03-02

README Change - Moving private keys to global scope since Bind 9.20 view scoped keys have become unreliable and sometimes wouldnt match.

1.0.8 - 2026-03-12

  • Change License to MIT to match the netbox-plugin-dns License. This project rests on the netbox-plugin-dns so a matching license makes more sense.
  • Renaming Project from Netbox Plugin Bind Provisioner to Netbox DNS Bridge as new code will be contributed that allows data to flow in both directions (Dynamic Updates), not just out of Netbox DNS.

1.5.0 - 2026-04-08

  • Change to versioning scheme - Now matches the major and minor version number to the one of netbox-plugin-dns. Only the minor sub version will be used to track incremental changes to this plugin.