[release-announce] designate 15.0.0 (zed)
no-reply at openstack.org
no-reply at openstack.org
Wed Oct 5 12:19:03 UTC 2022
We are jazzed to announce the release of:
designate 15.0.0: DNS as a Service
This release is part of the zed release series.
The source is available from:
https://opendev.org/openstack/designate
Download the package from:
https://tarballs.openstack.org/designate/
Please report issues through:
https://bugs.launchpad.net/designate/+bugs
For more details, please see below.
Changes in designate 14.0.0..15.0.0
-----------------------------------
989835c8 Fix minimum versions in requirements.txt
a1851784 Update TOX_CONSTRAINTS_FILE for stable/zed
48128c5d Update .gitreview for stable/zed
93dee6a3 Fix Redis connection over TLS
7460ae30 Fix compatibility with oslo.db 12.1.0
6d61ad55 Add backend validation and re-factored pool manage
e65b32a6 Clean up manage pools and add additional testing
4a34f43e Imported Translations from Zanata
925ec43d Imported Translations from Zanata
a03c4657 Fix designate-manage pool update MissingProjectID
f237b0a6 Add additional backend tests
536315e3 Validate MX records during recordset create or update
6b1f9916 Add basic test for disabling the api
f46d9de4 Add basic quotas api tests
3e6157f7 Add basic get backend test
43428e48 Simplified backend unit tests
16eba621 Sync rootwrap.conf from oslo.rootwrap
fe387ae9 Fixed issues with __repr__ and __str__ on objects
8beccabe Added additional test coverage for adapters
60c37876 Switch Designate to Alembic database migrations
968e3d34 Remove netaddr module requirement
857b4c4e Re-factored central and rpc decorators
9876b7b9 Imported Translations from Zanata
2fc736c6 Add a user guide for Neutron/Nova DNS integration
0a3959d1 Replace deprecated readfp method with read_file
12e42df7 Fix sqlalchemy table_names DeprecationWarning
e0454835 Fix pecan lookup_controller DeprecationWarning
3afd9a02 Enable cache_ok on custom sqlalchemy UUID type
d1005617 Cleaned up and fixed record objects and tests
7f428e8a Validate matching double quotes in TXT recordsets.
8abb3117 Cleaned up adapter code
f616bd45 Remove logic for Python < 3.2
a5db847f Added additional wsgi app testing
8140294c Updated dns message code and tests
463e1fda Added basic service unit tests
cc660ca0 Minmum TTL value is zero
39652d7a Add simple API versioning to the Designate API
80506809 Removed RPC calls from MDNS and moved them to the Worker
9ac64580 Fix FIPS job - nslookup_target
b5a7c6fc Update requirements for oslo.context>=4.0.0
260e1ddd Imported Translations from Zanata
cdf81bb5 Bump hacking version
2cb4caa3 Remove invalid use of jsonschema.compat
f0ccec12 Do not declare queue at a pipeline level
42dac06e Check zone_id in notification_handler to avoid UUID format issue.
5641e672 Drop python3.6/3.7 support in testing runtime
9a816ef8 Fix misleading release note for RBAC changes.
e8fdabfc Update neutron integration link.
e9faf7da Add zone ownership transfer user guide
291558c3 Fixed incorrect quota exception message
23c372d5 Remove deprecated docs section
baf61602 Imported Translations from Zanata
56223bbd Fix issue with mdns rpc and make mdns safer to upgrade
fe9fb45c Update zuul queue configuration
38178c07 Improve quota API validations
c230ddb8 Adds api_ca_cert configuration variable to pools.yaml
e1b92ab3 Remove unused render_template_to_file method
d1e34d02 Stop double compressing pdns logs
1fd240f8 Fix BIND9 log collection
5fe269ab Enable ptr unset tempest test
5d5d83e5 Remove deprecated and unused MDNS RPC calls
4d258fc4 Fixed rare race condition in unit test
e5d2fc06 Cleaned up agent backend code
13d98df2 Added additional worker unit test coverage
69366b92 Set a minimum coverage limit
f81a16db designate-tox-dnspython-latest irrelevant files
dc45a035 Validate worker actions before retrying poll
6ac659d2 Minimum TTL value allowed is zero
081a76a9 Drop lower-constraints.txt and its testing
278b39c2 Add a grenade job for bind9
6388f750 Switch CentOS jobs over to CentOS 9 Stream
fc905bf7 Removing more unused rpc calls
d705c5d6 Clarifies the zone import error message
147e00f4 Improved logging and minor cleanup of worker api
1a4ace8a Deprecate ineffective [service:api] max_header_line
30a03e10 Fix tox docs env to have the correct dependencies
6f847aeb Fix delete zone transfer request with scoped token
ed5aa3f7 Improve quota object coverage
24402867 Fix grenade job API startup for uwsgi
8533bf68 Remove unused log hook code
158e017b Fix set-quotas for non-project scoped tokens
c998ff69 Remove unused downgrade functions
89864d45 Add Python3 zed unit tests
888a9ef7 Update master for stable/yoga
61e1bfc6 Remove unused notification handler config from central
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 1 +
.zuul.yaml | 54 +--
api-ref/source/dns-api-v2-index.rst | 23 +
api-ref/source/dns-api-v2-version.inc | 47 --
api-ref/source/index.rst | 108 ++++-
api-ref/source/parameters.yaml | 30 +-
.../samples/versions/get-versions-response.json | 37 +-
contrib/fixleadingzeros.py | 5 +-
designate/agent/handler.py | 2 +-
designate/api/service.py | 7 +-
designate/api/v2/controllers/blacklists.py | 4 +-
designate/api/v2/controllers/quotas.py | 26 +-
designate/api/v2/controllers/rest.py | 20 +-
designate/api/v2/controllers/service_status.py | 10 +-
designate/api/v2/controllers/zones/__init__.py | 5 +-
designate/api/v2/controllers/zones/nameservers.py | 6 +-
designate/api/v2/controllers/zones/recordsets.py | 13 +-
.../api/v2/controllers/zones/tasks/exports.py | 14 +-
.../api/v2/controllers/zones/tasks/imports.py | 14 +-
.../v2/controllers/zones/tasks/transfer_accepts.py | 16 +-
.../controllers/zones/tasks/transfer_requests.py | 24 +-
designate/api/versions.py | 40 +-
designate/backend/__init__.py | 9 +-
designate/backend/agent.py | 145 +++---
designate/backend/base.py | 15 -
designate/backend/impl_akamai_v2.py | 4 -
designate/backend/impl_bind9.py | 4 -
designate/backend/impl_ns1.py | 4 -
designate/backend/impl_pdns4.py | 35 +-
designate/central/rpcapi.py | 58 +--
designate/central/service.py | 420 +++--------------
designate/cmd/__init__.py | 7 +
designate/cmd/agent.py | 3 -
designate/cmd/api.py | 3 -
designate/cmd/central.py | 3 -
designate/cmd/manage.py | 24 +-
designate/cmd/mdns.py | 3 -
designate/cmd/producer.py | 3 -
designate/cmd/sink.py | 3 -
designate/cmd/worker.py | 3 -
designate/common/constants.py | 18 +
.../decorators}/__init__.py | 0
designate/common/decorators/lock.py | 107 +++++
designate/common/decorators/notification.py | 90 ++++
designate/common/decorators/rpc.py | 49 ++
designate/common/policies/blacklist.py | 19 -
designate/common/policies/quota.py | 12 -
designate/common/policies/zone_transfer_accept.py | 43 --
designate/common/policies/zone_transfer_request.py | 4 -
designate/conf/__init__.py | 2 -
designate/conf/api.py | 6 +-
designate/conf/central.py | 2 -
designate/conf/mdns.py | 14 +-
designate/conf/metrics.py | 36 --
designate/conf/worker.py | 21 +-
designate/context.py | 16 -
designate/dnsutils.py | 51 ++-
designate/hookpoints.py | 183 --------
designate/locale/en_GB/LC_MESSAGES/designate.po | 6 +-
designate/locale/ru/LC_MESSAGES/designate.po | 8 +-
designate/manage/base.py | 12 +-
designate/manage/database.py | 79 +++-
designate/manage/pool.py | 341 ++++++++------
designate/mdns/base.py | 38 --
designate/mdns/handler.py | 19 +-
designate/mdns/notify.py | 289 ------------
designate/mdns/rpcapi.py | 144 ------
designate/mdns/service.py | 11 +-
designate/mdns/xfr.py | 64 ---
designate/metrics.py | 80 ----
designate/metrics_client/noop.py | 85 ----
designate/notification_handler/neutron.py | 6 +
designate/notification_handler/nova.py | 5 +
designate/objects/adapters/api_v2/base.py | 34 +-
designate/objects/adapters/api_v2/blacklist.py | 4 -
designate/objects/adapters/api_v2/floating_ip.py | 8 +-
designate/objects/adapters/api_v2/pool.py | 4 -
.../objects/adapters/api_v2/pool_attribute.py | 40 +-
.../objects/adapters/api_v2/pool_ns_record.py | 12 +-
designate/objects/adapters/api_v2/quota.py | 18 +-
designate/objects/adapters/api_v2/record.py | 16 +-
designate/objects/adapters/api_v2/recordset.py | 8 +-
.../objects/adapters/api_v2/service_status.py | 19 +-
designate/objects/adapters/api_v2/tld.py | 4 -
designate/objects/adapters/api_v2/tsigkey.py | 4 -
.../objects/adapters/api_v2/validation_error.py | 45 +-
designate/objects/adapters/api_v2/zone.py | 20 +-
.../objects/adapters/api_v2/zone_attribute.py | 38 +-
designate/objects/adapters/api_v2/zone_export.py | 26 +-
designate/objects/adapters/api_v2/zone_import.py | 18 +-
designate/objects/adapters/api_v2/zone_master.py | 41 +-
.../adapters/api_v2/zone_transfer_accept.py | 21 +-
.../adapters/api_v2/zone_transfer_request.py | 27 +-
designate/objects/adapters/base.py | 341 +++++++-------
designate/objects/adapters/yaml/base.py | 37 +-
designate/objects/adapters/yaml/pool.py | 4 -
.../objects/adapters/yaml/pool_also_notify.py | 4 -
designate/objects/adapters/yaml/pool_attribute.py | 39 +-
designate/objects/adapters/yaml/pool_nameserver.py | 4 -
designate/objects/adapters/yaml/pool_ns_record.py | 4 -
designate/objects/adapters/yaml/pool_target.py | 4 -
.../objects/adapters/yaml/pool_target_master.py | 4 -
.../objects/adapters/yaml/pool_target_option.py | 39 +-
designate/objects/base.py | 32 +-
designate/objects/quota.py | 13 +-
designate/objects/record.py | 8 +-
designate/objects/recordset.py | 8 +-
designate/objects/rrdata_a.py | 5 +-
designate/objects/rrdata_aaaa.py | 5 +-
designate/objects/rrdata_caa.py | 7 +-
designate/objects/rrdata_cert.py | 71 +--
designate/objects/rrdata_cname.py | 5 +-
designate/objects/rrdata_mx.py | 8 +-
designate/objects/rrdata_naptr.py | 10 +-
designate/objects/rrdata_ns.py | 5 +-
designate/objects/rrdata_ptr.py | 5 +-
designate/objects/rrdata_soa.py | 10 +-
designate/objects/rrdata_spf.py | 21 +-
designate/objects/rrdata_srv.py | 5 +-
designate/objects/rrdata_sshfp.py | 5 +-
designate/objects/rrdata_txt.py | 45 +-
designate/objects/zone.py | 2 +-
designate/producer/tasks.py | 6 +-
designate/quota/base.py | 2 +-
designate/quota/impl_storage.py | 27 +-
designate/rpc.py | 27 --
designate/schema/format.py | 38 +-
designate/service.py | 7 +-
designate/sqlalchemy/base.py | 5 +-
designate/sqlalchemy/session.py | 4 +
designate/sqlalchemy/types.py | 1 +
designate/storage/impl_sqlalchemy/__init__.py | 2 +
designate/storage/impl_sqlalchemy/alembic.ini | 105 +++++
designate/storage/impl_sqlalchemy/alembic/README | 5 +
designate/storage/impl_sqlalchemy/alembic/env.py | 83 ++++
.../impl_sqlalchemy/alembic/legacy_utils.py | 43 ++
.../manage.py => alembic/script.py.mako} | 29 +-
.../versions/0bcf910ea823_add_zone_attributes.py | 95 ++++
.../versions/15b34ff3ecb8_fix_service_charset.py | 48 ++
.../alembic/versions/304d41c3847a_add_services.py | 59 +++
...eaa5167_add_rrset_indexes_for_filtering_perf.py | 46 ++
.../versions/867a331ce1fc_domain_to_zone_rename.py | 149 ++++++
.../versions/91eb1eb7c882_support_caa_records.py | 48 ++
.../versions/93a00a815f07_unique_service_status.py | 60 +++
.../a69b45715cc1_add_delayed_notify_column.py | 45 ++
.../versions/b8999fd10721_support_naptr_records.py | 48 ++
.../versions/bfcfc4a07487_unique_ns_record.py | 65 +++
.../alembic/versions/c9f427f7180a_liberty.py | 340 ++++++++++++++
.../versions/d04819112169_new_pools_tables.py | 121 +++++
.../alembic/versions/d9a1883e93e9_add_fks.py | 64 +++
.../versions/e5e2199ed76e_support_cert_records.py | 48 ++
.../f9f969f9d85e_change_managed_column_types.py | 61 +++
.../storage/impl_sqlalchemy/migrate_repo/README | 4 -
.../impl_sqlalchemy/migrate_repo/migrate.cfg | 25 -
.../storage/impl_sqlalchemy/migrate_repo/utils.py | 44 --
.../migrate_repo/versions/070_liberty.py | 400 ----------------
.../migrate_repo/versions/071_placeholder.py | 30 --
.../migrate_repo/versions/072_placeholder.py | 30 --
.../migrate_repo/versions/073_placeholder.py | 30 --
.../migrate_repo/versions/074_placeholder.py | 30 --
.../migrate_repo/versions/075_placeholder.py | 30 --
.../migrate_repo/versions/076_placeholder.py | 30 --
.../migrate_repo/versions/077_placeholder.py | 30 --
.../migrate_repo/versions/078_placeholder.py | 30 --
.../migrate_repo/versions/079_placeholder.py | 30 --
.../versions/080_domain_to_zone_rename.py | 123 -----
.../migrate_repo/versions/081_add_FKs.py | 66 ---
.../migrate_repo/versions/082_unique_ns_record.py | 62 ---
.../versions/083_change_managed_column_types.py | 39 --
.../versions/084_add_delayed_notify_column.py | 35 --
.../versions/085_add_zone_attributes.py | 97 ----
.../migrate_repo/versions/086_new_pools_tables.py | 127 ------
.../migrate_repo/versions/087_placeholder.py | 26 --
.../migrate_repo/versions/088_placeholder.py | 26 --
.../migrate_repo/versions/089_placeholder.py | 26 --
.../migrate_repo/versions/090_placeholder.py | 26 --
.../migrate_repo/versions/091_placeholder.py | 26 --
.../migrate_repo/versions/092_placeholder.py | 26 --
.../migrate_repo/versions/093_placeholder.py | 26 --
.../migrate_repo/versions/094_placeholder.py | 26 --
.../migrate_repo/versions/095_placeholder.py | 26 --
.../migrate_repo/versions/096_placeholder.py | 26 --
.../migrate_repo/versions/097_add_services.py | 53 ---
.../versions/098_fix_service_charset.py | 34 --
.../099_add_rrset_indexes_for_filtering_perf.py | 36 --
.../versions/100_unique_service_status.py | 47 --
.../versions/101_support_naptr_records.py | 29 --
.../versions/102_support_caa_records.py | 29 --
.../test_api/test_v2/test_api.py} | 23 +-
.../{test_caa_object.py => test_rrdata_caa.py} | 30 +-
.../{test_cert_object.py => test_rrdata_cert.py} | 34 +-
.../{test_mx_object.py => test_rrdata_mx.py} | 17 +-
.../{test_naptr_object.py => test_rrdata_naptr.py} | 4 +-
.../{test_sshfp_object.py => test_rrdata_sshfp.py} | 24 +-
.../impl_sqlalchemy}/__init__.py | 0
.../storage/impl_sqlalchemy/alembic/__init__.py | 0
.../impl_sqlalchemy/alembic/test_legacy_utils.py | 56 +++
designate/utils.py | 15 -
designate/worker/processing.py | 28 +-
designate/worker/rpcapi.py | 15 +-
designate/worker/service.py | 41 +-
designate/worker/tasks/base.py | 64 +++
designate/worker/tasks/zone.py | 504 ++++++++++++++++-----
devstack/designate_plugins/backend-pdns4 | 1 +
devstack/plugin.sh | 1 +
devstack/upgrade/resources.sh | 1 +
devstack/upgrade/upgrade.sh | 2 +-
.../admin/backends/sample_yaml_snippets/pdns4.yaml | 1 +
etc/designate/rootwrap.conf.sample | 6 +
lower-constraints.txt | 154 -------
.../notes/Add-API-versioning-f5747a0bc766fb14.yaml | 7 +
...non-project-scoped-tokens-ffe3082db3dbb55b.yaml | 6 +
.../Support-scoped-tokens-6b7d6052a258cd11.yaml | 4 +-
...tch-to-alembic-migrations-15b7701f4e8b37c1.yaml | 7 +
...429-allow-ttl-min-of-zero-688f7c2cf095d89d.yaml | 8 +
.../notes/bug-1967825-c3463edde9a9dd7a.yaml | 7 +
.../notes/bugfix-1971856-3938a55b5494b8b8.yaml | 11 +
...fix-designate-manage-pool-7d812f938e894133.yaml | 6 +
...sfer-request-scoped-token-fc9d3be407e1a50a.yaml | 5 +
.../notes/mdns-rpc-moved-0e7eea194064834a.yaml | 8 +
...ove-more-unused-rpc-calls-d0199cf5518da6d6.yaml | 21 +
...emove-netaddr-requirement-ab9b9c2d15aa8e1c.yaml | 5 +
.../removed-mdns-notify-cae01bac02d214a9.yaml | 5 +
.../notes/removed-metrics-11a53cf88e1ea224.yaml | 6 +
.../validate-doublequotes-6c4ed4f65a9d5e4b.yaml | 4 +
releasenotes/source/index.rst | 1 +
.../locale/en_GB/LC_MESSAGES/releasenotes.po | 343 +++++++++++++-
releasenotes/source/yoga.rst | 6 +
requirements.txt | 13 +-
roles/bind-logs-conf/tasks/main.yaml | 2 +-
roles/pdns4-logs-conf/tasks/main.yaml | 2 +-
setup.cfg | 4 +-
test-requirements.txt | 2 +-
tox.ini | 27 +-
313 files changed, 8071 insertions(+), 7004 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index d995a9c8..4fb79d66 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -0,0 +1,4 @@
+# Requirements lower bounds listed here are our best effort to keep them up to
+# date but we do not test them so no guarantee of having them all correct. If
+# you find any incorrect lower bounds, let us know or propose a fix.
+
@@ -4 +8 @@
-
+alembic>=1.8.0 # MIT
@@ -12 +15,0 @@ keystonemiddleware>=4.17.0 # Apache-2.0
-netaddr>=0.7.18 # BSD
@@ -19 +22 @@ oslo.reports>=1.18.0 # Apache-2.0
-oslo.rootwrap>=5.8.0 # Apache-2.0
+oslo.rootwrap>=5.15.0 # Apache-2.0
@@ -35 +37,0 @@ SQLAlchemy>=1.2.19 # MIT
-sqlalchemy-migrate>=0.11.0 # Apache-2.0
@@ -41 +43 @@ oslo.i18n>=3.20.0 # Apache-2.0
-oslo.context>=2.22.0 # Apache-2.0
+oslo.context>=4.0.0 # Apache-2.0
@@ -48 +49,0 @@ os-win>=4.1.0 # Apache-2.0
-monasca-statsd>=1.4.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 09d939bf..673ad81b 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -6 +6 @@
-hacking>=3.0.1,<3.1.0 # Apache-2.0
+hacking>=4.1.0,<4.2.0 # Apache-2.0
More information about the Release-announce
mailing list