[designate] designate 4.0.0 (ocata)
We are thrilled to announce the release of: designate 4.0.0: DNS as a Service This release is part of the ocata release series. The source is available from: http://git.openstack.org/cgit/openstack/designate Download the package from: https://tarballs.openstack.org/designate/ Please report issues through launchpad: http://bugs.launchpad.net/designate For more details, please see below. 4.0.0 ^^^^^ New Features * Operators now have a choice in the type of notification payload content that Designate can emit via oslo.messaging's Notifier. The default plugin is configured to emit the same information that the notifications previous to this patch emitted. So there is no functional change. Operators can write their own notification plugins that exist in designate/notifications.py. An "audit" plugin is included. This plugin emits object changes, if they exist, along with zone ids, zone/recordset names. A plugin can define multiple payloads from a single notification to be emitted at once, if desirable. The selection of a plugin is defined by python entrypoints (for driver availability) and the new "notification_plugin" option in the "DEFAULT" config section. Changes in designate 3.0.0.0rc1..4.0.0 -------------------------------------- bf03da7 Add warning message to akamai driver a7dda9c Do not send DNS queries against hostnames c135dc7 Validate NS records on a pool during an update 438e39e Allow for zones / pools with no attributes f6ba5c2 Use exit code 1 for failed designate-manage pool commands 1c7acc2 Switch to decorators.idempotent_id dc34ed4 Fix noop metrics timed decorator 9a466ed Updated from global requirements 93c0161 Make notifications pluggable 184544e Use the oslo_utils address parser 03069bf Make exception catching more python3-ish 38f4455 Updated from global requirements 423e539 Use designate.utils.generate_uuid instead of str(uuid.uuid4) 28554cb change from domain to zone at configfile 1ea6f5e DOC Remove a couple of repeated words 1a5ebf6 Fix a typo in designate/worker/tasks/zone.py 1791233 Updated from global requirements 150e4d0 [api-ref] fix create zone export endpoint 5f973e8 Fix typo in upgrade doc 1598b5e The usage of LOG mismatch in the code e97e377 [backend:akamai] fix retrieval of tsig_key_name 26a7ad4 Remove lowercase constarint for pgsql b136cdb Use modules for import not objects 4c3f8ff Updated from global requirements f5a9fbe Add pGSQL support for pdns4 driver in devstack 13ee3fb Fix grenade to use the driver specified in the gate ad1f14c Update Devstack plugin dfa050f Set import exceptions in tox.ini configuration d250375 Show team and repo badges on README 9aedcde Add v6 support in _get_ip_data 2023781 Fix a typo in parameters.yaml 3a8452c Fix DB migration with postgresql 5d11a04 Updated from global requirements c723984 Updated from global requirements 7f771be Updated from global requirements 22460a9 Fix noop client getters e183541 [api-ref] add optional zone create parameter 'masters' 9e05e45 Remove tests ported to tempest plugin ad47c16 Fix typo d999c21 Switch stats client import to use oslo_utils 04374fc cors: update default configuration in config 4a8b70f Updated from global requirements 907cb4a Follow up - removing old dirs + config 583e824 Remove the method _dispatch in rpc 74f4cc8 Don't include openstack/common in flake8 exclude list 417efcc Add noop metrics client f54d1d8 Remove Oslo Incubator Code 67bdd1e Updated from global requirements f037de3 fix link to docs.openstack.org in release notes for mitaka 89033f0 [Trivial] Fix some typos in designate. e5f6ef7 Fix unit tests for oslo.config 3.18.0 4e269b5 Fix for allowing user to create zone other than ending with TLD bd18376 Update .coveragerc after the removal of respective directory f12da24 Fix Mitaka Upgrade Doc 899812d Changed the home-page link 618982a Use ConfigParser instead of SafeConfigParser 57c418d Updated from global requirements e0c52db Fix a typo 7dd4778 Updated from global requirements 24efb6b Enable release notes translation 857b3ed Updated from global requirements d20706a Remove vim header from source files e47a5db Fix typo a-an, than-then, wrong character case 366807f Fix typos in models.py & bind9.filters 177b391 Updated from global requirements 7ac7eb4 Infoblox: Reverse lookup zone creation fails 97359e2 Fix for the exception on creating secondary zone f16d567 Add API description for deleting zone export record to api-ref ac75d77 TrivialFix: Remove default=None when set value in Config e5cb256 Using sys.exit(main()) instead of main() 9e117a1 Trivial: Remove vim header from source files 8c486c9 Remove Routes from requirements 05d79a3 api-ref v2 recordset: document X-Designate-Edit-Managed-Records header a85b06f Updated from global requirements 9690aa7 Fix typos in zone.py & pools.rst & scheduler.rst 38e2416 Update reno for stable/newton 749b814 Some typos need to be fixed 9648a3d Updating the sample handler to be compatible with mitaka/newton b9febe6 Updated from global requirements 2f06187 Add Monasca-statsd metric generation 81aeea7 Partitioner - Rety on failure to get members Diffstat (except docs and test files) ------------------------------------- .coveragerc | 2 +- README.rst | 9 + api-ref/source/dns-api-v2-recordset.inc | 3 + api-ref/source/dns-api-v2-zone-export.inc | 35 +- api-ref/source/dns-api-v2-zone.inc | 1 + api-ref/source/parameters.yaml | 6 +- contrib/archive/backends/impl_ipa/auth.py | 4 +- contrib/consume.py | 39 ++ .../notification_handler/sample.py | 54 +-- contrib/designate-ext-samplehandler/setup.cfg | 6 +- contrib/ipaextractor.py | 5 +- contrib/records_mass_create.py | 5 +- contrib/zoneextractor.py | 2 +- designate/api/middleware.py | 5 + designate/api/v2/controllers/floatingips.py | 2 +- designate/backend/__init__.py | 4 +- designate/backend/agent.py | 3 +- designate/backend/agent_backend/__init__.py | 4 +- designate/backend/agent_backend/impl_gdnsd.py | 4 +- designate/backend/impl_akamai.py | 9 +- designate/backend/impl_infoblox/connector.py | 2 - .../backend/impl_infoblox/object_manipulator.py | 8 +- .../backend/impl_powerdns/migrate_repo/manage.py | 1 - .../versions/001_add_initial_schema.py | 2 - designate/central/service.py | 35 +- designate/common/config.py | 35 +- designate/common/memorycache.py | 97 ++++ designate/context.py | 16 +- designate/coordination.py | 19 +- designate/dnsutils.py | 2 +- designate/manage/pool.py | 27 +- designate/mdns/notify.py | 11 +- designate/mdns/xfr.py | 5 +- designate/metrics.py | 115 +++++ designate/metrics_client/__init__.py | 0 designate/metrics_client/noop.py | 92 ++++ designate/network_api/__init__.py | 4 +- designate/network_api/fake.py | 9 +- designate/network_api/neutron.py | 8 +- designate/notification_handler/__init__.py | 4 +- designate/notification_handler/base.py | 8 +- designate/notification_handler/neutron.py | 11 +- designate/notification_handler/nova.py | 7 +- designate/notifications.py | 182 +++++++- designate/objects/adapters/base.py | 3 +- designate/openstack/__init__.py | 0 designate/openstack/common/__init__.py | 0 designate/openstack/common/memorycache.py | 97 ---- designate/pool_manager/cache/__init__.py | 4 +- .../pool_manager/cache/impl_memcache/__init__.py | 2 +- .../cache/impl_sqlalchemy/migrate_repo/manage.py | 1 - designate/quota/__init__.py | 4 +- designate/quota/impl_noop.py | 4 +- designate/quota/impl_storage.py | 4 +- designate/rpc.py | 30 +- designate/scheduler/filters/attribute_filter.py | 12 +- designate/service.py | 19 +- designate/sqlalchemy/base.py | 3 +- designate/storage/__init__.py | 4 +- .../storage/impl_sqlalchemy/migrate_repo/manage.py | 1 - .../storage/impl_sqlalchemy/migrate_repo/utils.py | 2 - .../migrate_repo/versions/070_liberty.py | 17 +- .../migrate_repo/versions/086_new_pools_tables.py | 13 +- .../migrate_repo/versions/097_add_services.py | 7 +- designate/storage/impl_sqlalchemy/tables.py | 13 +- .../unit/test_agent/test_backends/test_djbdns.py | 2 +- .../unit/test_agent/test_backends/test_msdns.py | 2 +- designate/worker/tasks/zone.py | 4 +- devstack/designate_plugins/backend-pdns4 | 20 +- .../designate_plugins/backend-pdns4-pgsql-db.sql | 91 ++++ devstack/networking_test.py | 3 +- devstack/plugin.sh | 18 +- devstack/statsd_mock_server.py | 61 +++ devstack/upgrade/settings | 3 - etc/designate/designate.conf.sample | 39 +- etc/designate/pools.yaml.sample | 2 +- etc/designate/rootwrap.d/bind9.filters | 2 +- .../api/v2/test_zone_ownership_transfers.py | 132 ------ openstack-common.conf | 10 - .../pluggable-notifications-bd049b755a2ace9c.yaml | 21 + .../notes/pool_scheduler-32e34dda9484ef9a.yaml | 2 +- releasenotes/source/conf.py | 3 + releasenotes/source/index.rst | 1 + releasenotes/source/newton.rst | 6 + requirements.txt | 42 +- setup.cfg | 9 +- test-requirements.txt | 12 +- tools/pretty_flake8.py | 2 +- tox.ini | 3 +- 120 files changed, 1831 insertions(+), 732 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index d4eb861..c0111a3 100644 --- a/requirements.txt +++ b/requirements.txt @@ -9 +9 @@ greenlet>=0.3.2 # MIT -Jinja2>=2.8 # BSD License (3 clause) +Jinja2!=2.9.0,!=2.9.1,!=2.9.2,!=2.9.3,!=2.9.4,>=2.8 # BSD License (3 clause) @@ -11,4 +11,4 @@ jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT -keystoneauth1>=2.10.0 # Apache-2.0 -keystonemiddleware!=4.1.0,!=4.5.0,>=4.0.0 # Apache-2.0 -netaddr!=0.7.16,>=0.7.12 # BSD -oslo.config>=3.14.0 # Apache-2.0 +keystoneauth1>=2.18.0 # Apache-2.0 +keystonemiddleware>=4.12.0 # Apache-2.0 +netaddr!=0.7.16,>=0.7.13 # BSD +oslo.config!=3.18.0,>=3.14.0 # Apache-2.0 @@ -16 +16 @@ oslo.concurrency>=3.8.0 # Apache-2.0 -oslo.messaging>=5.2.0 # Apache-2.0 +oslo.messaging>=5.14.0 # Apache-2.0 @@ -18 +18 @@ oslo.middleware>=3.0.0 # Apache-2.0 -oslo.log>=1.14.0 # Apache-2.0 +oslo.log>=3.11.0 # Apache-2.0 @@ -23 +23 @@ oslo.service>=1.10.0 # Apache-2.0 -oslo.utils>=3.16.0 # Apache-2.0 +oslo.utils>=3.18.0 # Apache-2.0 @@ -26,2 +26,2 @@ PasteDeploy>=1.5.0 # MIT -pbr>=1.6 # Apache-2.0 -pecan!=1.0.2,!=1.0.3,!=1.0.4,>=1.0.0 # BSD +pbr>=1.8 # Apache-2.0 +pecan!=1.0.2,!=1.0.3,!=1.0.4,!=1.2,>=1.0.0 # BSD @@ -30,3 +30,2 @@ python-neutronclient>=5.1.0 # Apache-2.0 -Routes!=2.0,!=2.1,!=2.3.0,>=1.12.3;python_version=='2.7' # MIT -Routes!=2.0,!=2.3.0,>=1.12.3;python_version!='2.7' # MIT -requests>=2.10.0 # Apache-2.0 +requests!=2.12.2,>=2.10.0 # Apache-2.0 +retrying!=1.3.0,>=1.2.3 # Apache-2.0 @@ -36 +35 @@ sqlalchemy-migrate>=0.9.6 # Apache-2.0 -stevedore>=1.16.0 # Apache-2.0 +stevedore>=1.17.1 # Apache-2.0 @@ -39,4 +38,4 @@ setuptools!=24.0.0,>=16.0 # PSF/ZPL -WebOb>=1.2.3 # MIT -dnspython>=1.14.0 # http://www.dnspython.org/LICENSE -dnspython3>=1.12.0;python_version>='3.0' # http://www.dnspython.org/LICENSE -oslo.db>=4.10.0 # Apache-2.0 +WebOb>=1.6.0 # MIT +dnspython>=1.14.0;python_version=='2.7' # http://www.dnspython.org/LICENSE +dnspython3!=1.13.0,!=1.14.0,>=1.12.0;python_version>='3.0' # http://www.dnspython.org/LICENSE +oslo.db>=4.15.0 # Apache-2.0 @@ -45 +44 @@ oslo.context>=2.9.0 # Apache-2.0 -oslo.policy>=1.9.0 # Apache-2.0 +oslo.policy>=1.17.0 # Apache-2.0 @@ -48 +47 @@ python-memcached>=1.56 # PSF -tooz>=1.28.0 # Apache-2.0 +tooz>=1.47.0 # Apache-2.0 @@ -50 +49,2 @@ debtcollector>=1.2.0 # Apache-2.0 -os-win>=0.2.3 # Apache-2.0 +os-win>=1.4.0 # Apache-2.0 +monasca-statsd>=1.1.0 # Apache-2.0 diff --git a/test-requirements.txt b/test-requirements.txt index 2ba1249..e92cc24 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -7 +7 @@ hacking<0.10,>=0.9.2 -coverage>=3.6 # Apache-2.0 +coverage>=4.0 # Apache-2.0 @@ -11 +11 @@ oslotest>=1.10.0 # Apache-2.0 -oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0 +oslosphinx>=4.7.0 # Apache-2.0 @@ -13,2 +13,2 @@ python-subunit>=0.0.18 # Apache-2.0/BSD -requests-mock>=1.0 # Apache-2.0 -sphinx!=1.3b1,<1.3,>=1.2.1 # BSD +requests-mock>=1.1 # Apache-2.0 +sphinx!=1.3b1,<1.4,>=1.2.1 # BSD @@ -21 +21 @@ tempest>=12.1.0 # Apache-2.0 -reno>=1.8.0 # Apache2 +reno>=1.8.0 # Apache-2.0 @@ -24 +24 @@ bandit>=1.1.0 # Apache-2.0 -os-api-ref>=0.4.0 # Apache-2.0 +os-api-ref>=1.0.0 # Apache-2.0
participants (1)
-
no-reply@openstack.org