[release-announce] designate 14.0.0 (yoga)

no-reply at openstack.org no-reply at openstack.org
Wed Mar 30 11:54:38 UTC 2022


We are glad to announce the release of:

designate 14.0.0: DNS as a Service

This release is part of the yoga 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 13.0.0..14.0.0
-----------------------------------

66cc876e Fix zone update when adding new Bind9 target to pool.
93ebb1af Add inactive value to floating ip status
8ce022a7 Fix Designate for use with oslo.context>=4.0.0
694d189f Make CentOS 9 Stream job non-voting
f4439587 Checks for invalid denylist regex patterns
b1e1974f Fix grenade job for mod_wsgi to uwsgi transition
907a0296 Add proper quota error messages
7e543c2d Fixed incorrect message when zone import failed due to quota
eed5042c Simplify create zone import implementation
5469116d Remove legacy logic for deleting records
c38810b1 Remove unused central code
df10ff5b Fix recordset_records quota enforcement
9541a297 Integrate OSprofiler and Designate
3c495ed7 Updated status logic to always NOTIFY on change
30b9a085 setup.cfg: Replace dashes by underscores
ba8968c0 Fix typo of intro document
07a8a9d6 Add non-voting dnspython latest release unit test
0c7d218b Fix duplicate zone when creating ptr records
0275aaad Add a BIND9 job on CentOS 9 Stream
1cef20ed Allow email subadresses to be used within mail url of CAA records
6c80f616 Move context from tenant to project_id
bff3d5f6 Fix designate-manage pool update bugs
395a4a29 Fix a typo in the tsigkey policy file
7ec7adc4 Modernize PTR implementation in Central
7b28bbeb Add dig command to devstack instructions
631b18bd Fix API reference for service statuses
fa607f8f Add RBAC policy admin guide.
1504fbee Updating python testing classifier as per Yoga testing runtime
5f87d207 Fix support for scoped tokens and default roles
296a5ada Improve wording for validation error messages
256f8892 Add hacking check D710 for LOG.warn()
acd930d3 Fix dns.query.tcp/udp not always handling ipv6 properly
b9a4e36c Remove LOG.exceptions from __call__
17dc01d6 Fix apache wsgi config for CentOS
e2b136ef Fix test_dispatch_opcode_update unit test
2928502c bump py37 to py3 in tox.ini
0e16095a Enable H306 check and fix import ordering
79c61e46 Deprecate parameters of SSLMiddleware
1e366443 Run neutron integration job in gate
4b58446d Revert "Move back to mod_wsgi for devstack"
604fd8cf Add fips jobs
03a5d5d7 Allow TXT record over 255 characters if split
4807c232 Fix race condition in the sink when deleting records
771197c2 Remove Akamai (eDNS SOAP API) backend
897fc792 Fix test failures with dnspython>=2
2f17dd20 Update Quotas documentation
4c13dbea Imported Translations from Zanata
a84821ae Remove references to sys.version_info
ef15d07a Add Python3 yoga unit tests
3e45cdc6 Update master for stable/xena
f67ae198 Fix count_record policy to use the right deprecation variable
fcfb5dbd Fix typo in the find_pool deprecated rule
b3363cc8 Fix typos in zone policy deprecations
c4f57753 Fix update blacklist policy deprecation
626c60fc Replace deprecated assertDictContainsSubset
0b973a3c Replace deprecated assertRaisesRegexp
2e6611b1 Fix API reference for list service statuses
9bdc4a69 Add template for testing review or branch
f215cd7c Add CLI examples to user section


Diffstat (except docs and test files)
-------------------------------------

.zuul.yaml                                         |   62 +-
api-ref/source/dns-api-v2-service-status.inc       |   66 +-
api-ref/source/parameters.yaml                     |   55 +-
.../service_status/service_status_list.json        |    4 +-
.../service_status/service_status_show.json        |   14 +
contrib/archive/backends/impl_ipa/__init__.py      |    4 +-
contrib/archive/backends/impl_ipa/auth.py          |    8 +-
.../notification_handler/sample.py                 |    2 +-
contrib/designate-ext-samplehandler/setup.cfg      |    4 +-
contrib/dns_dump_raw.py                            |    2 +-
contrib/dns_dump_server.py                         |    2 +-
contrib/fixleadingzeros.py                         |   11 +-
contrib/vagrant/local.conf                         |    8 +
contrib/zoneextractor.py                           |    6 +-
designate/agent/handler.py                         |    9 +-
designate/agent/service.py                         |    6 +-
designate/api/admin/__init__.py                    |    2 +-
designate/api/admin/app.py                         |    2 +-
.../api/admin/controllers/extensions/counts.py     |    5 +-
.../api/admin/controllers/extensions/export.py     |    4 +-
.../api/admin/controllers/extensions/quotas.py     |    6 +-
.../api/admin/controllers/extensions/reports.py    |    2 +-
.../api/admin/controllers/extensions/tenants.py    |    4 +-
.../api/admin/controllers/extensions/zones.py      |    2 +-
designate/api/middleware.py                        |   13 +-
designate/api/v2/__init__.py                       |    2 +-
designate/api/v2/app.py                            |    2 +-
designate/api/v2/controllers/blacklists.py         |    7 +-
designate/api/v2/controllers/floatingips.py        |    4 +-
designate/api/v2/controllers/limits.py             |    3 +-
designate/api/v2/controllers/pools.py              |    6 +-
designate/api/v2/controllers/quotas.py             |    2 +-
designate/api/v2/controllers/recordsets.py         |    4 +-
designate/api/v2/controllers/reverse.py            |    2 +-
designate/api/v2/controllers/root.py               |   19 +-
designate/api/v2/controllers/service_status.py     |    2 +-
designate/api/v2/controllers/tlds.py               |    6 +-
designate/api/v2/controllers/tsigkeys.py           |    7 +-
designate/api/v2/controllers/zones/__init__.py     |    8 +-
designate/api/v2/controllers/zones/nameservers.py  |    4 +-
designate/api/v2/controllers/zones/recordsets.py   |    8 +-
.../api/v2/controllers/zones/tasks/__init__.py     |   18 +-
.../api/v2/controllers/zones/tasks/abandon.py      |    4 +-
.../api/v2/controllers/zones/tasks/exports.py      |   13 +-
.../api/v2/controllers/zones/tasks/imports.py      |    6 +-
.../v2/controllers/zones/tasks/transfer_accepts.py |    6 +-
.../controllers/zones/tasks/transfer_requests.py   |    8 +-
designate/api/v2/controllers/zones/tasks/xfr.py    |    4 +-
designate/api/wsgi.py                              |    4 +-
designate/backend/agent.py                         |   40 +-
.../backend/agent_backend/impl_denominator.py      |   10 +-
designate/backend/agent_backend/impl_djbdns.py     |    2 +-
designate/backend/agent_backend/impl_gdnsd.py      |    6 +-
designate/backend/agent_backend/impl_knot2.py      |    2 +-
designate/backend/agent_backend/impl_msdns.py      |    6 +-
designate/backend/base.py                          |    9 +-
designate/backend/impl_akamai.py                   |  259 ----
designate/backend/impl_akamai_v2.py                |    4 +-
designate/backend/impl_bind9.py                    |   35 +-
designate/backend/impl_designate.py                |    2 +-
designate/backend/impl_dynect.py                   |    2 +-
designate/backend/impl_infoblox/__init__.py        |    5 +-
designate/backend/impl_ns1.py                      |    4 +-
designate/backend/impl_nsd4.py                     |    2 +-
designate/backend/impl_pdns4.py                    |    4 +-
designate/central/rpcapi.py                        |   52 +-
designate/central/service.py                       | 1556 ++++++++++----------
designate/cmd/agent.py                             |    2 +-
designate/cmd/api.py                               |    2 +-
designate/cmd/central.py                           |    2 +-
designate/cmd/mdns.py                              |    2 +-
designate/cmd/producer.py                          |    2 +-
designate/cmd/sink.py                              |    2 +-
designate/common/constants.py                      |   33 +
designate/common/policies/__init__.py              |    2 -
designate/common/policies/base.py                  |   72 +-
designate/common/policies/blacklist.py             |    2 +-
designate/common/policies/context.py               |   50 +-
designate/common/policies/diagnostics.py           |   42 -
designate/common/policies/pool.py                  |    2 +-
designate/common/policies/quota.py                 |    2 +-
designate/common/policies/record.py                |    2 +-
designate/common/policies/recordset.py             |   64 +-
designate/common/policies/tsigkey.py               |   15 +-
designate/common/policies/zone.py                  |   39 +-
designate/common/policies/zone_export.py           |   24 +-
designate/common/policies/zone_import.py           |    2 +-
designate/common/policies/zone_transfer_accept.py  |    6 +-
designate/common/policies/zone_transfer_request.py |   25 +-
designate/common/profiler.py                       |   88 ++
designate/conf/__init__.py                         |    4 +-
designate/conf/akamai.py                           |   47 -
designate/conf/api.py                              |    8 +
designate/context.py                               |   33 +-
designate/dnsutils.py                              |  156 +-
designate/exceptions.py                            |   13 +
designate/hacking/checks.py                        |   11 +
designate/heartbeat_emitter.py                     |    2 +-
designate/hookpoints.py                            |    4 +-
designate/manage/pool.py                           |   10 +-
designate/manage/tlds.py                           |    4 +-
designate/mdns/base.py                             |    2 +-
designate/mdns/handler.py                          |    2 +-
designate/mdns/notify.py                           |   36 +-
designate/mdns/rpcapi.py                           |    4 +-
designate/mdns/service.py                          |    8 +-
designate/mdns/xfr.py                              |    2 +-
designate/network_api/fake.py                      |    2 +-
designate/notification_handler/base.py             |   52 +-
designate/notifications.py                         |    2 +-
designate/objects/adapters/api_v2/base.py          |    4 +-
designate/objects/adapters/api_v2/blacklist.py     |    3 +-
designate/objects/adapters/api_v2/floating_ip.py   |    3 +-
designate/objects/adapters/api_v2/pool.py          |    3 +-
.../objects/adapters/api_v2/pool_attribute.py      |    2 +-
.../objects/adapters/api_v2/pool_ns_record.py      |    3 +-
designate/objects/adapters/api_v2/quota.py         |    3 +-
designate/objects/adapters/api_v2/record.py        |    3 +-
designate/objects/adapters/api_v2/recordset.py     |    5 +-
.../objects/adapters/api_v2/service_status.py      |    3 +-
designate/objects/adapters/api_v2/tld.py           |    3 +-
designate/objects/adapters/api_v2/tsigkey.py       |    3 +-
.../objects/adapters/api_v2/validation_error.py    |    2 +-
designate/objects/adapters/api_v2/zone.py          |    3 +-
.../objects/adapters/api_v2/zone_attribute.py      |    2 +-
designate/objects/adapters/api_v2/zone_export.py   |    3 +-
designate/objects/adapters/api_v2/zone_import.py   |    3 +-
designate/objects/adapters/api_v2/zone_master.py   |    2 +-
.../adapters/api_v2/zone_transfer_accept.py        |    3 +-
.../adapters/api_v2/zone_transfer_request.py       |   13 +-
designate/objects/adapters/base.py                 |    2 +-
designate/objects/adapters/yaml/pool.py            |    3 +-
.../objects/adapters/yaml/pool_also_notify.py      |    3 +-
designate/objects/adapters/yaml/pool_attribute.py  |    2 +-
designate/objects/adapters/yaml/pool_nameserver.py |    3 +-
designate/objects/adapters/yaml/pool_ns_record.py  |    2 +-
designate/objects/adapters/yaml/pool_target.py     |    3 +-
.../objects/adapters/yaml/pool_target_master.py    |    3 +-
.../objects/adapters/yaml/pool_target_option.py    |    2 +-
designate/objects/base.py                          |    8 +-
designate/objects/blacklist.py                     |    4 +-
designate/objects/fields.py                        |   55 +-
designate/objects/floating_ip.py                   |    9 +-
designate/objects/recordset.py                     |    2 +-
designate/objects/rrdata_a.py                      |    4 +-
designate/objects/rrdata_aaaa.py                   |    4 +-
designate/objects/rrdata_caa.py                    |    5 +-
designate/objects/rrdata_cert.py                   |    4 +-
designate/objects/rrdata_cname.py                  |    4 +-
designate/objects/rrdata_mx.py                     |    4 +-
designate/objects/rrdata_naptr.py                  |    4 +-
designate/objects/rrdata_ns.py                     |    4 +-
designate/objects/rrdata_ptr.py                    |    4 +-
designate/objects/rrdata_soa.py                    |    4 +-
designate/objects/rrdata_spf.py                    |    6 +-
designate/objects/rrdata_srv.py                    |    4 +-
designate/objects/rrdata_sshfp.py                  |    4 +-
designate/objects/rrdata_txt.py                    |   44 +-
designate/objects/zone.py                          |    6 +-
designate/objects/zone_master.py                   |    2 +-
designate/plugin.py                                |    5 +-
designate/policy.py                                |   19 +-
designate/producer/service.py                      |    4 +-
designate/producer/tasks.py                        |   17 +-
designate/quota/base.py                            |   17 +-
designate/quota/impl_storage.py                    |    2 +-
designate/resources/wsdl/EnhancedDNS.xml           |  238 ---
designate/rpc.py                                   |   21 +-
designate/scheduler/filters/default_pool_filter.py |    2 +-
designate/scheduler/filters/fallback_filter.py     |    2 +-
.../filters/in_doubt_default_pool_filter.py        |    2 +-
.../scheduler/filters/pool_id_attribute_filter.py  |    2 +-
designate/scheduler/filters/random_filter.py       |    2 +-
designate/schema/__init__.py                       |    6 +-
designate/service.py                               |   10 +-
designate/sqlalchemy/base.py                       |    2 +-
designate/sqlalchemy/session.py                    |   28 +
designate/sqlalchemy/utils.py                      |   10 +-
designate/storage/__init__.py                      |    2 +-
designate/storage/base.py                          |    6 -
designate/storage/impl_sqlalchemy/__init__.py      |   27 +-
.../migrate_repo/versions/082_unique_ns_record.py  |    4 +-
.../versions/085_add_zone_attributes.py            |    4 +-
.../migrate_repo/versions/086_new_pools_tables.py  |    2 +-
.../migrate_repo/versions/097_add_services.py      |    4 +-
designate/storage/impl_sqlalchemy/tables.py        |    2 +-
.../nova/compute.instance.create.end-2.json        |  180 +++
.../test_notification_handler/test_neutron.py      |   42 +-
designate/utils.py                                 |    6 +-
designate/worker/README.md                         |    2 +-
designate/worker/processing.py                     |    2 +-
designate/worker/rpcapi.py                         |    4 +-
designate/worker/service.py                        |    6 +-
designate/worker/tasks/zone.py                     |   44 +-
designate/worker/utils.py                          |   82 --
devstack/designate_plugins/backend-akamai          |  150 --
devstack/exercise.sh                               |    5 -
devstack/lib/wsgi                                  |   36 +
devstack/networking_test.py                        |   10 +-
devstack/plugin.sh                                 |   40 +-
devstack/settings                                  |    2 +-
devstack/statsd_mock_server.py                     |    2 +-
devstack/upgrade/from-xena/upgrade-designate       |   27 +
devstack/upgrade/upgrade.sh                        |    4 +
etc/designate/api-paste.ini                        |   15 +-
lower-constraints.txt                              |    2 +-
playbooks/enable-fips.yaml                         |    3 +
...x-recordset-records-quota-76ed3095dd2afbbe.yaml |    4 +
...atterns-not-being-checked-ec1f1316ccc6cb1d.yaml |   16 +
...x-update-zone-create-zone-ada1fd81de479492.yaml |    4 +
...emove-Akamai-eNDS-backend-1c73a734e8f8ddfa.yaml |    5 +
.../Support-scoped-tokens-6b7d6052a258cd11.yaml    |    4 +
.../bp-designate-os-profiler-3f507d5e1e319f3d.yaml |   13 +
...33-allow-caa-mail-subaddr-d02cdc46bbb118ad.yaml |   10 +
...ecate-ssl-middleware-opts-bee401944e40fc63.yaml |    8 +
.../notes/fix-service-status-ba18270651011ee6.yaml |    6 +
.../notes/new-ptr-status-69958252a2f294c9.yaml     |    5 +
.../remove-unused-rpc-calls-b123902ea0c55c19.yaml  |   15 +
.../notes/rpc-version-update-f87b852b361d0aad.yaml |    7 +
releasenotes/source/index.rst                      |    1 +
.../locale/en_GB/LC_MESSAGES/releasenotes.po       |   13 +-
releasenotes/source/xena.rst                       |    6 +
requirements.txt                                   |    2 +-
setup.cfg                                          |    2 +-
tools/install_venv.py                              |    1 -
tools/install_venv_common.py                       |    4 -
tox.ini                                            |   11 +-
316 files changed, 4708 insertions(+), 4131 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index d3b1baae..d995a9c8 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -24,0 +25 @@ oslo.versionedobjects>=1.31.2 # Apache-2.0
+osprofiler>=3.4.0 # Apache-2.0
@@ -36 +36,0 @@ stevedore>=1.20.0 # Apache-2.0
-suds-jurko>=0.6 # LGPLv3+






More information about the Release-announce mailing list