netbox-plugin-dns 1.1.0b6__tar.gz → 1.1.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of netbox-plugin-dns might be problematic. Click here for more details.
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/PKG-INFO +14 -14
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/README.md +5 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/__init__.py +1 -1
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/nested_serializers.py +17 -16
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/serializers.py +1 -1
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/serializers_/record.py +1 -0
- netbox_plugin_dns-1.1.0b6/netbox_dns/api/serializers_/contact.py → netbox_plugin_dns-1.1.1/netbox_dns/api/serializers_/registration_contact.py +5 -5
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/serializers_/zone.py +5 -5
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/serializers_/zone_template.py +5 -5
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/urls.py +2 -2
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/views.py +7 -35
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/filtersets/__init__.py +1 -1
- netbox_plugin_dns-1.1.0b6/netbox_dns/filtersets/contact.py → netbox_plugin_dns-1.1.1/netbox_dns/filtersets/registration_contact.py +4 -4
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/filtersets/zone.py +15 -15
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/filtersets/zone_template.py +15 -15
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/forms/__init__.py +1 -1
- netbox_plugin_dns-1.1.0b6/netbox_dns/forms/contact.py → netbox_plugin_dns-1.1.1/netbox_dns/forms/registration_contact.py +16 -16
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/forms/zone.py +13 -13
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/forms/zone_template.py +13 -13
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/graphql/__init__.py +2 -2
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/graphql/filters.py +5 -5
- netbox_plugin_dns-1.1.1/netbox_dns/graphql/schema.py +83 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/graphql/types.py +38 -12
- netbox_plugin_dns-1.1.1/netbox_dns/management/commands/rebuild_dnssync.py +18 -0
- netbox_plugin_dns-1.1.1/netbox_dns/migrations/0007_alter_ordering_options.py +25 -0
- netbox_plugin_dns-1.1.0b6/netbox_dns/migrations/0007_view_prefixes.py → netbox_plugin_dns-1.1.1/netbox_dns/migrations/0008_view_prefixes.py +1 -1
- netbox_plugin_dns-1.1.1/netbox_dns/migrations/0009_rename_contact_registrationcontact.py +36 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/models/__init__.py +1 -1
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/models/nameserver.py +8 -3
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/models/record.py +42 -20
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/models/record_template.py +4 -1
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/models/registrar.py +7 -1
- netbox_plugin_dns-1.1.0b6/netbox_dns/models/contact.py → netbox_plugin_dns-1.1.1/netbox_dns/models/registration_contact.py +15 -9
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/models/view.py +9 -2
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/models/zone.py +48 -30
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/models/zone_template.py +12 -9
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/navigation.py +7 -7
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/signals/ipam_dnssync.py +6 -2
- {netbox_plugin_dns-1.1.0b6/netbox_dns/views → netbox_plugin_dns-1.1.1/netbox_dns/tables}/__init__.py +1 -1
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/tables/nameserver.py +1 -7
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/tables/record.py +10 -37
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/tables/record_template.py +0 -17
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/tables/registrar.py +0 -2
- netbox_plugin_dns-1.1.0b6/netbox_dns/tables/contact.py → netbox_plugin_dns-1.1.1/netbox_dns/tables/registration_contact.py +5 -6
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/tables/view.py +1 -8
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/tables/zone.py +0 -15
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/tables/zone_template.py +2 -16
- netbox_plugin_dns-1.1.0b6/netbox_dns/templates/netbox_dns/contact.html → netbox_plugin_dns-1.1.1/netbox_dns/templates/netbox_dns/registrationcontact.html +1 -1
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/urls/__init__.py +2 -2
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/urls/nameserver.py +14 -38
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/urls/record.py +7 -19
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/urls/record_template.py +18 -27
- netbox_plugin_dns-1.1.1/netbox_dns/urls/registrar.py +39 -0
- netbox_plugin_dns-1.1.1/netbox_dns/urls/registration_contact.py +60 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/urls/view.py +8 -22
- netbox_plugin_dns-1.1.1/netbox_dns/urls/zone.py +25 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/urls/zone_template.py +16 -26
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/utilities/ipam_dnssync.py +26 -24
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/validators/dns_name.py +9 -0
- {netbox_plugin_dns-1.1.0b6/netbox_dns/tables → netbox_plugin_dns-1.1.1/netbox_dns/views}/__init__.py +1 -1
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/views/nameserver.py +7 -3
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/views/record.py +12 -7
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/views/registrar.py +0 -1
- netbox_plugin_dns-1.1.1/netbox_dns/views/registration_contact.py +94 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/views/view.py +6 -1
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/views/zone.py +7 -6
- netbox_plugin_dns-1.1.1/netbox_plugin_dns.egg-info/PKG-INFO +114 -0
- netbox_plugin_dns-1.1.1/netbox_plugin_dns.egg-info/SOURCES.txt +150 -0
- netbox_plugin_dns-1.1.1/netbox_plugin_dns.egg-info/dependency_links.txt +1 -0
- netbox_plugin_dns-1.1.1/netbox_plugin_dns.egg-info/requires.txt +1 -0
- netbox_plugin_dns-1.1.1/netbox_plugin_dns.egg-info/top_level.txt +3 -0
- netbox_plugin_dns-1.1.1/pyproject.toml +33 -0
- netbox_plugin_dns-1.1.1/setup.cfg +4 -0
- netbox_plugin_dns-1.1.0b6/netbox_dns/graphql/schema.py +0 -103
- netbox_plugin_dns-1.1.0b6/netbox_dns/urls/contact.py +0 -51
- netbox_plugin_dns-1.1.0b6/netbox_dns/urls/registrar.py +0 -63
- netbox_plugin_dns-1.1.0b6/netbox_dns/urls/zone.py +0 -63
- netbox_plugin_dns-1.1.0b6/netbox_dns/views/contact.py +0 -95
- netbox_plugin_dns-1.1.0b6/pyproject.toml +0 -27
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/LICENSE +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/serializers_/__init__.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/serializers_/nameserver.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/serializers_/prefix.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/serializers_/record_template.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/serializers_/registrar.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/serializers_/view.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/apps.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/choices/__init__.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/choices/record.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/choices/zone.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/fields/__init__.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/fields/address.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/fields/ipam.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/fields/network.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/fields/rfc2317.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/filtersets/nameserver.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/filtersets/record.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/filtersets/record_template.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/filtersets/registrar.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/filtersets/view.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/forms/nameserver.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/forms/record.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/forms/record_template.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/forms/registrar.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/forms/view.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/management/commands/cleanup_database.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/management/commands/cleanup_rrset_ttl.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/management/commands/setup_dnssync.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/management/commands/update_soa.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0001_squashed_netbox_dns_0_15.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0001_squashed_netbox_dns_0_22.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0002_contact_description_registrar_description.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0003_default_view.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0004_create_and_assign_default_view.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0005_alter_zone_view_not_null.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0006_templating.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0020_netbox_3_4.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0021_record_ip_address.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0022_search.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0023_alter_record_value.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0024_tenancy.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0025_ipam_coupling_cf.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0026_domain_registration.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0027_alter_registrar_iana_id.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0028_rfc2317_fields.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/0029_record_fqdn.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/migrations/__init__.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/mixins/__init__.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/mixins/object_modification.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/signals/__init__.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/tables/ipam_dnssync.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/template_content.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/nameserver.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/record/managed.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/record/related.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/record.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/recordtemplate.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/registrar.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/view/button.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/view/prefix.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/view/related.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/view.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/zone/base.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/zone/child.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/zone/child_zone.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/zone/managed_record.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/zone/record.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/zone/registration.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/zone/rfc2317_child_zone.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/zone.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/templates/netbox_dns/zonetemplate.html +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/utilities/__init__.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/utilities/conversions.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/validators/__init__.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/validators/dns_value.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/validators/rfc2317.py +0 -0
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/views/record_template.py +1 -1
- {netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/views/zone_template.py +2 -2
|
@@ -1,22 +1,18 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: netbox-plugin-dns
|
|
3
|
-
Version: 1.1.
|
|
3
|
+
Version: 1.1.1
|
|
4
4
|
Summary: NetBox DNS is a NetBox plugin for managing DNS data.
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
Author-email: Peter Eckel <pete@netbox-dns.org>
|
|
6
|
+
Project-URL: Homepage, https://github.com/peteeckel/netbox-plugin-dns
|
|
7
|
+
Project-URL: Documentation, https://github.com/peteeckel/netbox-plugin-dns/blob/main/docs/using_netbox_dns.md
|
|
8
|
+
Project-URL: Repository, https://github.com/peteeckel/netbox-plugin-dns
|
|
9
|
+
Project-URL: Issues, https://github.com/peteeckel/netbox-plugin-dns/issues
|
|
7
10
|
Keywords: netbox,netbox-plugin,dns
|
|
8
|
-
Author: Peter Eckel
|
|
9
|
-
Author-email: pete@netbox-dns.org
|
|
10
|
-
Requires-Python: >=3.10,<4.0
|
|
11
11
|
Classifier: Development Status :: 5 - Production/Stable
|
|
12
|
-
|
|
13
|
-
Classifier: Programming Language :: Python :: 3
|
|
14
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
15
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
16
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
17
|
-
Requires-Dist: dnspython (>=2.6.1,<3.0.0)
|
|
18
|
-
Project-URL: Repository, https://github.com/peteeckel/netbox-plugin-dns
|
|
12
|
+
Requires-Python: >=3.10
|
|
19
13
|
Description-Content-Type: text/markdown
|
|
14
|
+
License-File: LICENSE
|
|
15
|
+
Requires-Dist: dnspython
|
|
20
16
|
|
|
21
17
|
# NetBox DNS
|
|
22
18
|
The NetBox DNS plugin enables NetBox to manage operational DNS data such as name servers, zones, records and views, as well as registration data for domains. It can automate tasks like creating PTR records, generating zone serial numbers, NS and SOA records, as well as validate names and values values for resource records to ensure zone data is consistent, up-to-date and compliant with to the relevant RFCs.
|
|
@@ -34,6 +30,11 @@ The NetBox DNS plugin enables NetBox to manage operational DNS data such as name
|
|
|
34
30
|
<a href="https://pepy.tech/project/netbox-plugin-dns"><img alt="Downloads/Month" src="https://static.pepy.tech/badge/netbox-plugin-dns/week"></a>
|
|
35
31
|
</div>
|
|
36
32
|
|
|
33
|
+
> [!WARNING]
|
|
34
|
+
> **As a result of some issues with NetBox Branching still under investigation, NetBox DNS is currently not compatible with the new NetBox Branching plugin.**
|
|
35
|
+
> This affects multiple aspects of the branching functionality, and currently (netboxlabs-branching-plugin version 0.4.0) there is no workaround. Do not try to use NetBox Branching together with NetBox DNS until these issues are resolved.
|
|
36
|
+
> This warning will be updated as soon as the situation is resolved.
|
|
37
|
+
|
|
37
38
|
## Objectives
|
|
38
39
|
NetBox DNS is designed to be the 'DNS Source of Truth' analogous to NetBox being the 'Network Source of Truth'.
|
|
39
40
|
|
|
@@ -111,4 +112,3 @@ For further information, please refer to the full documentation: [Using NetBox D
|
|
|
111
112
|
## License
|
|
112
113
|
|
|
113
114
|
MIT
|
|
114
|
-
|
|
@@ -14,6 +14,11 @@ The NetBox DNS plugin enables NetBox to manage operational DNS data such as name
|
|
|
14
14
|
<a href="https://pepy.tech/project/netbox-plugin-dns"><img alt="Downloads/Month" src="https://static.pepy.tech/badge/netbox-plugin-dns/week"></a>
|
|
15
15
|
</div>
|
|
16
16
|
|
|
17
|
+
> [!WARNING]
|
|
18
|
+
> **As a result of some issues with NetBox Branching still under investigation, NetBox DNS is currently not compatible with the new NetBox Branching plugin.**
|
|
19
|
+
> This affects multiple aspects of the branching functionality, and currently (netboxlabs-branching-plugin version 0.4.0) there is no workaround. Do not try to use NetBox Branching together with NetBox DNS until these issues are resolved.
|
|
20
|
+
> This warning will be updated as soon as the situation is resolved.
|
|
21
|
+
|
|
17
22
|
## Objectives
|
|
18
23
|
NetBox DNS is designed to be the 'DNS Source of Truth' analogous to NetBox being the 'Network Source of Truth'.
|
|
19
24
|
|
|
@@ -59,6 +59,22 @@ class NestedZoneSerializer(WritableNestedSerializer):
|
|
|
59
59
|
]
|
|
60
60
|
|
|
61
61
|
|
|
62
|
+
class NestedZoneTemplateSerializer(WritableNestedSerializer):
|
|
63
|
+
url = serializers.HyperlinkedIdentityField(
|
|
64
|
+
view_name="plugins-api:netbox_dns-api:zonetemplate-detail"
|
|
65
|
+
)
|
|
66
|
+
|
|
67
|
+
class Meta:
|
|
68
|
+
model = ZoneTemplate
|
|
69
|
+
fields = (
|
|
70
|
+
"id",
|
|
71
|
+
"url",
|
|
72
|
+
"name",
|
|
73
|
+
"display",
|
|
74
|
+
"description",
|
|
75
|
+
)
|
|
76
|
+
|
|
77
|
+
|
|
62
78
|
class NestedRecordSerializer(WritableNestedSerializer):
|
|
63
79
|
url = serializers.HyperlinkedIdentityField(
|
|
64
80
|
view_name="plugins-api:netbox_dns-api:record-detail"
|
|
@@ -86,6 +102,7 @@ class NestedRecordSerializer(WritableNestedSerializer):
|
|
|
86
102
|
"status",
|
|
87
103
|
"ttl",
|
|
88
104
|
"zone",
|
|
105
|
+
"managed",
|
|
89
106
|
"active",
|
|
90
107
|
]
|
|
91
108
|
|
|
@@ -109,19 +126,3 @@ class NestedRecordTemplateSerializer(WritableNestedSerializer):
|
|
|
109
126
|
"ttl",
|
|
110
127
|
"description",
|
|
111
128
|
)
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
class NestedZoneTemplateSerializer(WritableNestedSerializer):
|
|
115
|
-
url = serializers.HyperlinkedIdentityField(
|
|
116
|
-
view_name="plugins-api:netbox_dns-api:zonetemplate-detail"
|
|
117
|
-
)
|
|
118
|
-
|
|
119
|
-
class Meta:
|
|
120
|
-
model = ZoneTemplate
|
|
121
|
-
fields = (
|
|
122
|
-
"id",
|
|
123
|
-
"url",
|
|
124
|
-
"name",
|
|
125
|
-
"display",
|
|
126
|
-
"description",
|
|
127
|
-
)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
from .serializers_.contact import *
|
|
2
1
|
from .serializers_.nameserver import *
|
|
3
2
|
from .serializers_.record import *
|
|
4
3
|
from .serializers_.registrar import *
|
|
4
|
+
from .serializers_.registration_contact import *
|
|
5
5
|
from .serializers_.view import *
|
|
6
6
|
from .serializers_.zone import *
|
|
7
7
|
from .serializers_.zone_template import *
|
|
@@ -2,19 +2,19 @@ from rest_framework import serializers
|
|
|
2
2
|
|
|
3
3
|
from netbox.api.serializers import NetBoxModelSerializer
|
|
4
4
|
|
|
5
|
-
from netbox_dns.models import
|
|
5
|
+
from netbox_dns.models import RegistrationContact
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
__all__ = ("
|
|
8
|
+
__all__ = ("RegistrationContactSerializer",)
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
class
|
|
11
|
+
class RegistrationContactSerializer(NetBoxModelSerializer):
|
|
12
12
|
url = serializers.HyperlinkedIdentityField(
|
|
13
|
-
view_name="plugins-api:netbox_dns-api:
|
|
13
|
+
view_name="plugins-api:netbox_dns-api:registrationcontact-detail"
|
|
14
14
|
)
|
|
15
15
|
|
|
16
16
|
class Meta:
|
|
17
|
-
model =
|
|
17
|
+
model = RegistrationContact
|
|
18
18
|
fields = (
|
|
19
19
|
"id",
|
|
20
20
|
"url",
|
|
@@ -6,7 +6,7 @@ from tenancy.api.serializers import TenantSerializer
|
|
|
6
6
|
from .view import ViewSerializer
|
|
7
7
|
from .nameserver import NameServerSerializer
|
|
8
8
|
from .registrar import RegistrarSerializer
|
|
9
|
-
from .
|
|
9
|
+
from .registration_contact import RegistrationContactSerializer
|
|
10
10
|
from .zone_template import ZoneTemplateSerializer
|
|
11
11
|
|
|
12
12
|
from ..nested_serializers import NestedZoneSerializer
|
|
@@ -62,28 +62,28 @@ class ZoneSerializer(NetBoxModelSerializer):
|
|
|
62
62
|
required=False,
|
|
63
63
|
help_text="The registrar the domain is registered with",
|
|
64
64
|
)
|
|
65
|
-
registrant =
|
|
65
|
+
registrant = RegistrationContactSerializer(
|
|
66
66
|
nested=True,
|
|
67
67
|
many=False,
|
|
68
68
|
read_only=False,
|
|
69
69
|
required=False,
|
|
70
70
|
help_text="The owner of the domain",
|
|
71
71
|
)
|
|
72
|
-
admin_c =
|
|
72
|
+
admin_c = RegistrationContactSerializer(
|
|
73
73
|
nested=True,
|
|
74
74
|
many=False,
|
|
75
75
|
read_only=False,
|
|
76
76
|
required=False,
|
|
77
77
|
help_text="The administrative contact for the domain",
|
|
78
78
|
)
|
|
79
|
-
tech_c =
|
|
79
|
+
tech_c = RegistrationContactSerializer(
|
|
80
80
|
nested=True,
|
|
81
81
|
many=False,
|
|
82
82
|
read_only=False,
|
|
83
83
|
required=False,
|
|
84
84
|
help_text="The technical contact for the domain",
|
|
85
85
|
)
|
|
86
|
-
billing_c =
|
|
86
|
+
billing_c = RegistrationContactSerializer(
|
|
87
87
|
nested=True,
|
|
88
88
|
many=False,
|
|
89
89
|
read_only=False,
|
{netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/api/serializers_/zone_template.py
RENAMED
|
@@ -8,7 +8,7 @@ from netbox_dns.api.nested_serializers import NestedRecordTemplateSerializer
|
|
|
8
8
|
|
|
9
9
|
from .nameserver import NameServerSerializer
|
|
10
10
|
from .registrar import RegistrarSerializer
|
|
11
|
-
from .
|
|
11
|
+
from .registration_contact import RegistrationContactSerializer
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
__all__ = ("ZoneTemplateSerializer",)
|
|
@@ -38,28 +38,28 @@ class ZoneTemplateSerializer(NetBoxModelSerializer):
|
|
|
38
38
|
required=False,
|
|
39
39
|
help_text="The registrar the domain is registered with",
|
|
40
40
|
)
|
|
41
|
-
registrant =
|
|
41
|
+
registrant = RegistrationContactSerializer(
|
|
42
42
|
nested=True,
|
|
43
43
|
many=False,
|
|
44
44
|
read_only=False,
|
|
45
45
|
required=False,
|
|
46
46
|
help_text="The owner of the domain",
|
|
47
47
|
)
|
|
48
|
-
admin_c =
|
|
48
|
+
admin_c = RegistrationContactSerializer(
|
|
49
49
|
nested=True,
|
|
50
50
|
many=False,
|
|
51
51
|
read_only=False,
|
|
52
52
|
required=False,
|
|
53
53
|
help_text="The administrative contact for the domain",
|
|
54
54
|
)
|
|
55
|
-
tech_c =
|
|
55
|
+
tech_c = RegistrationContactSerializer(
|
|
56
56
|
nested=True,
|
|
57
57
|
many=False,
|
|
58
58
|
read_only=False,
|
|
59
59
|
required=False,
|
|
60
60
|
help_text="The technical contact for the domain",
|
|
61
61
|
)
|
|
62
|
-
billing_c =
|
|
62
|
+
billing_c = RegistrationContactSerializer(
|
|
63
63
|
nested=True,
|
|
64
64
|
many=False,
|
|
65
65
|
read_only=False,
|
|
@@ -7,7 +7,7 @@ from netbox_dns.api.views import (
|
|
|
7
7
|
NameServerViewSet,
|
|
8
8
|
RecordViewSet,
|
|
9
9
|
RegistrarViewSet,
|
|
10
|
-
|
|
10
|
+
RegistrationContactViewSet,
|
|
11
11
|
ZoneTemplateViewSet,
|
|
12
12
|
RecordTemplateViewSet,
|
|
13
13
|
PrefixViewSet,
|
|
@@ -21,7 +21,7 @@ router.register("zones", ZoneViewSet)
|
|
|
21
21
|
router.register("nameservers", NameServerViewSet)
|
|
22
22
|
router.register("records", RecordViewSet)
|
|
23
23
|
router.register("registrars", RegistrarViewSet)
|
|
24
|
-
router.register("contacts",
|
|
24
|
+
router.register("contacts", RegistrationContactViewSet)
|
|
25
25
|
router.register("zonetemplates", ZoneTemplateViewSet)
|
|
26
26
|
router.register("recordtemplates", RecordTemplateViewSet)
|
|
27
27
|
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
from rest_framework import serializers
|
|
2
|
-
from rest_framework.decorators import action
|
|
3
|
-
from rest_framework.response import Response
|
|
4
2
|
from rest_framework.routers import APIRootView
|
|
5
3
|
|
|
6
4
|
from ipam.models import Prefix
|
|
@@ -14,7 +12,7 @@ from netbox_dns.api.serializers import (
|
|
|
14
12
|
NameServerSerializer,
|
|
15
13
|
RecordSerializer,
|
|
16
14
|
RegistrarSerializer,
|
|
17
|
-
|
|
15
|
+
RegistrationContactSerializer,
|
|
18
16
|
ZoneTemplateSerializer,
|
|
19
17
|
RecordTemplateSerializer,
|
|
20
18
|
PrefixSerializer,
|
|
@@ -25,7 +23,7 @@ from netbox_dns.filtersets import (
|
|
|
25
23
|
NameServerFilterSet,
|
|
26
24
|
RecordFilterSet,
|
|
27
25
|
RegistrarFilterSet,
|
|
28
|
-
|
|
26
|
+
RegistrationContactFilterSet,
|
|
29
27
|
ZoneTemplateFilterSet,
|
|
30
28
|
RecordTemplateFilterSet,
|
|
31
29
|
)
|
|
@@ -35,7 +33,7 @@ from netbox_dns.models import (
|
|
|
35
33
|
NameServer,
|
|
36
34
|
Record,
|
|
37
35
|
Registrar,
|
|
38
|
-
|
|
36
|
+
RegistrationContact,
|
|
39
37
|
ZoneTemplate,
|
|
40
38
|
RecordTemplate,
|
|
41
39
|
)
|
|
@@ -51,12 +49,6 @@ class ViewViewSet(NetBoxModelViewSet):
|
|
|
51
49
|
serializer_class = ViewSerializer
|
|
52
50
|
filterset_class = ViewFilterSet
|
|
53
51
|
|
|
54
|
-
@action(detail=True, methods=["get"])
|
|
55
|
-
def views(self, request, pk=None):
|
|
56
|
-
views = View.objects.filter(zone=pk)
|
|
57
|
-
serializer = ViewSerializer(views, many=True, context={"request": request})
|
|
58
|
-
return Response(serializer.data)
|
|
59
|
-
|
|
60
52
|
|
|
61
53
|
class ZoneViewSet(NetBoxModelViewSet):
|
|
62
54
|
queryset = Zone.objects.prefetch_related(
|
|
@@ -70,32 +62,12 @@ class ZoneViewSet(NetBoxModelViewSet):
|
|
|
70
62
|
serializer_class = ZoneSerializer
|
|
71
63
|
filterset_class = ZoneFilterSet
|
|
72
64
|
|
|
73
|
-
@action(detail=True, methods=["get"])
|
|
74
|
-
def records(self, request, pk=None):
|
|
75
|
-
records = Record.objects.filter(zone=pk)
|
|
76
|
-
serializer = RecordSerializer(records, many=True, context={"request": request})
|
|
77
|
-
return Response(serializer.data)
|
|
78
|
-
|
|
79
|
-
@action(detail=True, methods=["get"])
|
|
80
|
-
def nameservers(self, request, pk=None):
|
|
81
|
-
nameservers = NameServer.objects.filter(zones__id=pk)
|
|
82
|
-
serializer = NameServerSerializer(
|
|
83
|
-
nameservers, many=True, context={"request": request}
|
|
84
|
-
)
|
|
85
|
-
return Response(serializer.data)
|
|
86
|
-
|
|
87
65
|
|
|
88
66
|
class NameServerViewSet(NetBoxModelViewSet):
|
|
89
67
|
queryset = NameServer.objects.prefetch_related("zones", "tenant")
|
|
90
68
|
serializer_class = NameServerSerializer
|
|
91
69
|
filterset_class = NameServerFilterSet
|
|
92
70
|
|
|
93
|
-
@action(detail=True, methods=["get"])
|
|
94
|
-
def zones(self, request, pk=None):
|
|
95
|
-
zones = Zone.objects.filter(nameservers__id=pk)
|
|
96
|
-
serializer = ZoneSerializer(zones, many=True, context={"request": request})
|
|
97
|
-
return Response(serializer.data)
|
|
98
|
-
|
|
99
71
|
|
|
100
72
|
class RecordViewSet(NetBoxModelViewSet):
|
|
101
73
|
queryset = Record.objects.all().prefetch_related("zone", "zone__view", "tenant")
|
|
@@ -140,10 +112,10 @@ class RegistrarViewSet(NetBoxModelViewSet):
|
|
|
140
112
|
filterset_class = RegistrarFilterSet
|
|
141
113
|
|
|
142
114
|
|
|
143
|
-
class
|
|
144
|
-
queryset =
|
|
145
|
-
serializer_class =
|
|
146
|
-
filterset_class =
|
|
115
|
+
class RegistrationContactViewSet(NetBoxModelViewSet):
|
|
116
|
+
queryset = RegistrationContact.objects.all()
|
|
117
|
+
serializer_class = RegistrationContactSerializer
|
|
118
|
+
filterset_class = RegistrationContactFilterSet
|
|
147
119
|
|
|
148
120
|
|
|
149
121
|
class ZoneTemplateViewSet(NetBoxModelViewSet):
|
|
@@ -2,15 +2,15 @@ from django.db.models import Q
|
|
|
2
2
|
|
|
3
3
|
from netbox.filtersets import NetBoxModelFilterSet
|
|
4
4
|
|
|
5
|
-
from netbox_dns.models import
|
|
5
|
+
from netbox_dns.models import RegistrationContact
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
__all__ = ("
|
|
8
|
+
__all__ = ("RegistrationContactFilterSet",)
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
class
|
|
11
|
+
class RegistrationContactFilterSet(NetBoxModelFilterSet):
|
|
12
12
|
class Meta:
|
|
13
|
-
model =
|
|
13
|
+
model = RegistrationContact
|
|
14
14
|
fields = (
|
|
15
15
|
"id",
|
|
16
16
|
"name",
|
|
@@ -7,7 +7,7 @@ from netbox.filtersets import NetBoxModelFilterSet
|
|
|
7
7
|
from tenancy.filtersets import TenancyFilterSet
|
|
8
8
|
from utilities.filters import MultiValueCharFilter
|
|
9
9
|
|
|
10
|
-
from netbox_dns.models import View, Zone, Registrar,
|
|
10
|
+
from netbox_dns.models import View, Zone, Registrar, RegistrationContact, NameServer
|
|
11
11
|
from netbox_dns.choices import ZoneStatusChoices
|
|
12
12
|
|
|
13
13
|
|
|
@@ -95,44 +95,44 @@ class ZoneFilterSet(TenancyFilterSet, NetBoxModelFilterSet):
|
|
|
95
95
|
label="Registrar",
|
|
96
96
|
)
|
|
97
97
|
registrant_id = django_filters.ModelMultipleChoiceFilter(
|
|
98
|
-
queryset=
|
|
98
|
+
queryset=RegistrationContact.objects.all(),
|
|
99
99
|
label="Registrant ID",
|
|
100
100
|
)
|
|
101
101
|
registrant = django_filters.ModelMultipleChoiceFilter(
|
|
102
|
-
queryset=
|
|
102
|
+
queryset=RegistrationContact.objects.all(),
|
|
103
103
|
field_name="registrant__contact_id",
|
|
104
104
|
to_field_name="contact_id",
|
|
105
105
|
label="Registrant",
|
|
106
106
|
)
|
|
107
107
|
admin_c_id = django_filters.ModelMultipleChoiceFilter(
|
|
108
|
-
queryset=
|
|
109
|
-
label="Administrative
|
|
108
|
+
queryset=RegistrationContact.objects.all(),
|
|
109
|
+
label="Administrative RegistrationContact ID",
|
|
110
110
|
)
|
|
111
111
|
admin_c = django_filters.ModelMultipleChoiceFilter(
|
|
112
|
-
queryset=
|
|
112
|
+
queryset=RegistrationContact.objects.all(),
|
|
113
113
|
field_name="admin_c__contact_id",
|
|
114
114
|
to_field_name="contact_id",
|
|
115
|
-
label="Administrative
|
|
115
|
+
label="Administrative RegistrationContact",
|
|
116
116
|
)
|
|
117
117
|
tech_c_id = django_filters.ModelMultipleChoiceFilter(
|
|
118
|
-
queryset=
|
|
119
|
-
label="Technical
|
|
118
|
+
queryset=RegistrationContact.objects.all(),
|
|
119
|
+
label="Technical RegistrationContact ID",
|
|
120
120
|
)
|
|
121
121
|
tech_c = django_filters.ModelMultipleChoiceFilter(
|
|
122
|
-
queryset=
|
|
122
|
+
queryset=RegistrationContact.objects.all(),
|
|
123
123
|
field_name="tech_c__contact_id",
|
|
124
124
|
to_field_name="contact_id",
|
|
125
|
-
label="Technical
|
|
125
|
+
label="Technical RegistrationContact",
|
|
126
126
|
)
|
|
127
127
|
billing_c_id = django_filters.ModelMultipleChoiceFilter(
|
|
128
|
-
queryset=
|
|
129
|
-
label="Billing
|
|
128
|
+
queryset=RegistrationContact.objects.all(),
|
|
129
|
+
label="Billing RegistrationContact ID",
|
|
130
130
|
)
|
|
131
131
|
billing_c = django_filters.ModelMultipleChoiceFilter(
|
|
132
|
-
queryset=
|
|
132
|
+
queryset=RegistrationContact.objects.all(),
|
|
133
133
|
field_name="billing_c__contact_id",
|
|
134
134
|
to_field_name="contact_id",
|
|
135
|
-
label="Billing
|
|
135
|
+
label="Billing RegistrationContact",
|
|
136
136
|
)
|
|
137
137
|
active = django_filters.BooleanFilter(
|
|
138
138
|
label="Zone is active",
|
{netbox_plugin_dns-1.1.0b6 → netbox_plugin_dns-1.1.1}/netbox_dns/filtersets/zone_template.py
RENAMED
|
@@ -9,7 +9,7 @@ from netbox_dns.models import (
|
|
|
9
9
|
ZoneTemplate,
|
|
10
10
|
RecordTemplate,
|
|
11
11
|
Registrar,
|
|
12
|
-
|
|
12
|
+
RegistrationContact,
|
|
13
13
|
NameServer,
|
|
14
14
|
)
|
|
15
15
|
|
|
@@ -53,44 +53,44 @@ class ZoneTemplateFilterSet(TenancyFilterSet, NetBoxModelFilterSet):
|
|
|
53
53
|
label="Registrar",
|
|
54
54
|
)
|
|
55
55
|
registrant_id = django_filters.ModelMultipleChoiceFilter(
|
|
56
|
-
queryset=
|
|
56
|
+
queryset=RegistrationContact.objects.all(),
|
|
57
57
|
label="Registrant ID",
|
|
58
58
|
)
|
|
59
59
|
registrant = django_filters.ModelMultipleChoiceFilter(
|
|
60
|
-
queryset=
|
|
60
|
+
queryset=RegistrationContact.objects.all(),
|
|
61
61
|
field_name="registrant__contact_id",
|
|
62
62
|
to_field_name="contact_id",
|
|
63
63
|
label="Registrant",
|
|
64
64
|
)
|
|
65
65
|
admin_c_id = django_filters.ModelMultipleChoiceFilter(
|
|
66
|
-
queryset=
|
|
67
|
-
label="Administrative
|
|
66
|
+
queryset=RegistrationContact.objects.all(),
|
|
67
|
+
label="Administrative RegistrationContact ID",
|
|
68
68
|
)
|
|
69
69
|
admin_c = django_filters.ModelMultipleChoiceFilter(
|
|
70
|
-
queryset=
|
|
70
|
+
queryset=RegistrationContact.objects.all(),
|
|
71
71
|
field_name="admin_c__contact_id",
|
|
72
72
|
to_field_name="contact_id",
|
|
73
|
-
label="Administrative
|
|
73
|
+
label="Administrative RegistrationContact",
|
|
74
74
|
)
|
|
75
75
|
tech_c_id = django_filters.ModelMultipleChoiceFilter(
|
|
76
|
-
queryset=
|
|
77
|
-
label="Technical
|
|
76
|
+
queryset=RegistrationContact.objects.all(),
|
|
77
|
+
label="Technical RegistrationContact ID",
|
|
78
78
|
)
|
|
79
79
|
tech_c = django_filters.ModelMultipleChoiceFilter(
|
|
80
|
-
queryset=
|
|
80
|
+
queryset=RegistrationContact.objects.all(),
|
|
81
81
|
field_name="tech_c__contact_id",
|
|
82
82
|
to_field_name="contact_id",
|
|
83
|
-
label="Technical
|
|
83
|
+
label="Technical RegistrationContact",
|
|
84
84
|
)
|
|
85
85
|
billing_c_id = django_filters.ModelMultipleChoiceFilter(
|
|
86
|
-
queryset=
|
|
87
|
-
label="Billing
|
|
86
|
+
queryset=RegistrationContact.objects.all(),
|
|
87
|
+
label="Billing RegistrationContact ID",
|
|
88
88
|
)
|
|
89
89
|
billing_c = django_filters.ModelMultipleChoiceFilter(
|
|
90
|
-
queryset=
|
|
90
|
+
queryset=RegistrationContact.objects.all(),
|
|
91
91
|
field_name="billing_c__contact_id",
|
|
92
92
|
to_field_name="contact_id",
|
|
93
|
-
label="Billing
|
|
93
|
+
label="Billing RegistrationContact",
|
|
94
94
|
)
|
|
95
95
|
|
|
96
96
|
class Meta:
|
|
@@ -9,18 +9,18 @@ from netbox.forms import (
|
|
|
9
9
|
from utilities.forms.fields import TagFilterField
|
|
10
10
|
from utilities.forms.rendering import FieldSet
|
|
11
11
|
|
|
12
|
-
from netbox_dns.models import
|
|
12
|
+
from netbox_dns.models import RegistrationContact
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
__all__ = (
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
"
|
|
19
|
-
"
|
|
16
|
+
"RegistrationContactForm",
|
|
17
|
+
"RegistrationContactFilterForm",
|
|
18
|
+
"RegistrationContactImportForm",
|
|
19
|
+
"RegistrationContactBulkEditForm",
|
|
20
20
|
)
|
|
21
21
|
|
|
22
22
|
|
|
23
|
-
class
|
|
23
|
+
class RegistrationContactForm(NetBoxModelForm):
|
|
24
24
|
fieldsets = (
|
|
25
25
|
FieldSet(
|
|
26
26
|
"name",
|
|
@@ -37,13 +37,13 @@ class ContactForm(NetBoxModelForm):
|
|
|
37
37
|
"fax",
|
|
38
38
|
"fax_ext",
|
|
39
39
|
"email",
|
|
40
|
-
name="
|
|
40
|
+
name="RegistrationContact",
|
|
41
41
|
),
|
|
42
42
|
FieldSet("tags", name="Tags"),
|
|
43
43
|
)
|
|
44
44
|
|
|
45
45
|
class Meta:
|
|
46
|
-
model =
|
|
46
|
+
model = RegistrationContact
|
|
47
47
|
fields = (
|
|
48
48
|
"name",
|
|
49
49
|
"description",
|
|
@@ -63,8 +63,8 @@ class ContactForm(NetBoxModelForm):
|
|
|
63
63
|
)
|
|
64
64
|
|
|
65
65
|
|
|
66
|
-
class
|
|
67
|
-
model =
|
|
66
|
+
class RegistrationContactFilterForm(NetBoxModelFilterSetForm):
|
|
67
|
+
model = RegistrationContact
|
|
68
68
|
|
|
69
69
|
fieldsets = (
|
|
70
70
|
FieldSet("q", "filter_id", "tag"),
|
|
@@ -89,7 +89,7 @@ class ContactFilterForm(NetBoxModelFilterSetForm):
|
|
|
89
89
|
)
|
|
90
90
|
contact_id = forms.CharField(
|
|
91
91
|
required=False,
|
|
92
|
-
label="
|
|
92
|
+
label="RegistrationContact ID",
|
|
93
93
|
)
|
|
94
94
|
organization = forms.CharField(
|
|
95
95
|
required=False,
|
|
@@ -128,12 +128,12 @@ class ContactFilterForm(NetBoxModelFilterSetForm):
|
|
|
128
128
|
email = forms.CharField(
|
|
129
129
|
required=False,
|
|
130
130
|
)
|
|
131
|
-
tag = TagFilterField(
|
|
131
|
+
tag = TagFilterField(RegistrationContact)
|
|
132
132
|
|
|
133
133
|
|
|
134
|
-
class
|
|
134
|
+
class RegistrationContactImportForm(NetBoxModelImportForm):
|
|
135
135
|
class Meta:
|
|
136
|
-
model =
|
|
136
|
+
model = RegistrationContact
|
|
137
137
|
fields = (
|
|
138
138
|
"name",
|
|
139
139
|
"description",
|
|
@@ -153,8 +153,8 @@ class ContactImportForm(NetBoxModelImportForm):
|
|
|
153
153
|
)
|
|
154
154
|
|
|
155
155
|
|
|
156
|
-
class
|
|
157
|
-
model =
|
|
156
|
+
class RegistrationContactBulkEditForm(NetBoxModelBulkEditForm):
|
|
157
|
+
model = RegistrationContact
|
|
158
158
|
|
|
159
159
|
name = forms.CharField(
|
|
160
160
|
required=False,
|