We are tickled pink to announce the release of: senlin 7.0.0: OpenStack Clustering This release is part of the stein release series. The source is available from: https://git.openstack.org/cgit/openstack/senlin Download the package from: https://tarballs.openstack.org/senlin/ Please report issues through: https://bugs.launchpad.net/senlin/+bugs For more details, please see below. Changes in senlin 6.0.0..7.0.0 ------------------------------ 27ce61f6 Add release note for hm fixes 9a52f4a3 Fix detach LB policy when LB is not in ACTIVE and ONLINE f52ac6fb cluster_resize with capacity is 0 9f49cfdf Fix Senlin performance issues 30cf0e33 Check health policy v1.0 before upgrade 070ad9d7 Add release notes for Stein 39a91603 Improve Health Manager to avoid duplicate health checks. 3e70333a Fix node delete with lifecycle hook bug 0bb87c4d add python 3.7 unit test job df5947ee Clean up devstack tempest jobs 67591b02 Fix cluster recovery and node recovery params 9d6c0a8d Use region_name when getting endpoint URL 97cd02b0 Remove unused batch_num variable. 01fe1997 Fix duplicating network ports on node recovery 8a1e44df Bump openstacksdk to 0.24.0 ad3f7bc5 Make py35 api and functional test voting 7581f527 Fix node lock aquire to force with node operation 8b7c4117 Catch DBDuplicateEntry when locking cluster 0367baa1 Do not set parent action status if stop node failed 9f3e4941 Add node_operation to lock and conflict bypass 7f01ff75 Add support for Oslo.Reports ec3c42a2 Fix member address selection in lbaas driver 3770d11a Add action_purge to senlin-manage b9c9cfaa Miscellaneous fixes 4270103c Add missing retry_on_deadlock 20e40cb4 Fix the misspelling of "required" f2fc46dd Enable health checks after failed operation 66a62021 Default argument value should not be mutable e9b8cf4d Log failed nova operations 719c1bc3 Set owner for actions in waiting for lifecycle 125e4033 Fix the misspelling of "except" 1e5e4dd8 Fix parameters for update node when recovery with lb_policy 44b5ae89 Add force to action_update 38e71876 Fix action failed status c220ce07 Fix `'NoneType' object has no attribute 'update'` when receiver params are not defined but a request contains data 64cf9d06 Convert requests response from byte to string 55329831 Update health manger to not spawn multiple tasks 29ed0237 fix misspelling in the unit test fb888e3f Use ThreadGroup.add_timer() API correctly ffbfa804 Add action_update api to cancel actions 8f340b2e Update mailinglist from dev to discuss 52d87022 Rework health check code c9858bd6 add line to fix Unexpected indentation 50d00c42 Add python 3.6 unit test job b2f6a03c Replace usage of get_legacy_facade() with get_engine() b421f39b Minor error 586ed616 Add missing www_authenticate_uri to devstack f06ec494 Cleaned up devstack logging f529ffe6 Add senlin-status upgrade check command framework e8633adf Remove i18n.enable_lazy() call from senlin.cmd ed4b8355 Update min tox version to 2.0 f381651c Start using glance instead of compute to find images af036cf7 Make CLUSTER_DELETE action ignore conflicts/locks d8df1f8c Add sphinx extension to document policies/profiles 364b1402 Update scaling policy logic to be applied before action acceptance 4059a3e3 Stop using deprecated version of enable_logging c7272cdf Increment versioning with pbr instruction a34e45b6 Reject actions if target resource is locked 86119a69 Fix cooldown check 2dcf3543 Don't quote {posargs} in tox.ini 7d5c0086 Cleanup .zuul.yaml 3e6a688d Support multiple detection types in health policy c5d4f5d2 Removed extra underlines in tests c55f6e59 Remove old tempest remanents from main repo facd502b Multiple detection modes spec 682304af Node poll URL improvements e1b8701f Propagate node creation errors 1c92710d Fail-fast on locked resource spec 8889c25b Bump openstacksdk version to 0.17.2 8d115be8 add python 3.6 unit test job f36b1b19 switch documentation job to new PTI 446c78a1 import zuul job settings from project-config 8a2fd8d2 Fix broken schema validation 32dfa177 Delete receiver doc exist "senlin command line" comment d27cba4d Fix net check return error when net_obj get value is "None" bb66cc1e Fix test_run_workflow unittests a0865a01 Imported Translations from Zanata 3b67e510 Update reno for stable/rocky Diffstat (except docs and test files) ------------------------------------- .zuul.yaml | 206 +-- README.rst | 2 +- api-ref/source/actions.inc | 44 + api-ref/source/clusters.inc | 5 + api-ref/source/nodes.inc | 3 + api-ref/source/parameters.yaml | 14 + api-ref/source/samples/action-get-request.json | 5 + .../source/samples/cluster-recover-request.json | 5 +- api-ref/source/samples/node-recover-request.json | 5 +- contrib/kubernetes/setup.cfg | 2 +- contrib/vdu/setup.cfg | 2 +- devstack/lib/senlin | 8 +- .../contributor/policies/load_balance_v1.rst | 8 +- lower-constraints.txt | 4 +- .../legacy/senlin-dsvm-tempest-py27-api/post.yaml | 67 - .../legacy/senlin-dsvm-tempest-py27-api/run.yaml | 80 - .../senlin-dsvm-tempest-py27-functional/post.yaml | 67 - .../senlin-dsvm-tempest-py27-functional/run.yaml | 80 - .../senlin-dsvm-tempest-py27-integration/post.yaml | 67 - .../senlin-dsvm-tempest-py27-integration/run.yaml | 99 -- .../legacy/senlin-dsvm-tempest-py35-api/post.yaml | 67 - .../legacy/senlin-dsvm-tempest-py35-api/run.yaml | 82 - .../senlin-dsvm-tempest-py35-functional/post.yaml | 67 - .../senlin-dsvm-tempest-py35-functional/run.yaml | 81 - .../senlin-dsvm-tempest-py35-integration/post.yaml | 67 - .../senlin-dsvm-tempest-py35-integration/run.yaml | 99 -- .../notes/action-purge-11db5d8018b8389a.yaml | 4 + .../notes/action-update-api-fc51b1582c0b5902.yaml | 7 + .../notes/bug-1789488-75ee756a53722cd1.yaml | 6 + .../notes/bug-1811161-c6416ad27ab0a2ce.yaml | 6 + .../notes/bug-1811294-262d4b9cced3f505.yaml | 6 + .../notes/bug-1813089-db57e7bdfd3983ac.yaml | 7 + .../notes/bug-1815540-2664a975db5fafc8.yaml | 6 + .../notes/bug-1817379-23dd2c925259d5f2.yaml | 5 + .../notes/bug-1817604-41d4b8f6c6f920e4.yaml | 9 + ...ter-scale-action-conflict-0e1e64591e943e25.yaml | 22 + ...l-fast-on-locked-resource-eee28572dc40009a.yaml | 15 + .../health-manager-fixes-d5955f9af88102fc.yaml | 9 + ...y-mutiple-detection-types-10bfdc80771278cb.yaml | 17 + ...s-upgrade-check-framework-b9db3bb9db8d1015.yaml | 13 + releasenotes/source/index.rst | 1 + .../locale/en_GB/LC_MESSAGES/releasenotes.po | 113 ++ .../source/locale/fr/LC_MESSAGES/releasenotes.po | 63 + releasenotes/source/rocky.rst | 6 + requirements.txt | 4 +- senlin/__init__.py | 15 - senlin/api/common/wsgi.py | 7 +- senlin/api/middleware/fault.py | 4 + senlin/api/openstack/history.rst | 11 + senlin/api/openstack/v1/actions.py | 23 + senlin/api/openstack/v1/router.py | 4 + senlin/api/openstack/v1/version.py | 2 +- senlin/cmd/api.py | 5 +- senlin/cmd/api_wsgi.py | 3 - senlin/cmd/engine.py | 6 +- senlin/cmd/manage.py | 55 +- senlin/cmd/status.py | 83 + senlin/common/config.py | 3 + senlin/common/consts.py | 48 +- senlin/common/exception.py | 32 +- senlin/common/policies/actions.py | 11 + senlin/common/schema.py | 10 +- senlin/common/utils.py | 12 +- senlin/db/api.py | 23 + senlin/db/sqlalchemy/api.py | 373 +++-- senlin/db/sqlalchemy/models.py | 12 + senlin/drivers/base.py | 1 + senlin/drivers/os/__init__.py | 2 + senlin/drivers/os/keystone_v3.py | 4 +- senlin/drivers/os/lbaas.py | 15 +- senlin/drivers/os/nova_v2.py | 8 +- senlin/drivers/os_test/__init__.py | 2 + senlin/drivers/os_test/glance_v2.py | 40 + senlin/drivers/os_test/nova_v2.py | 26 +- senlin/drivers/sdk.py | 7 +- senlin/engine/actions/base.py | 210 ++- senlin/engine/actions/cluster_action.py | 101 +- senlin/engine/actions/node_action.py | 31 +- senlin/engine/health_manager.py | 924 +++++++---- senlin/engine/node.py | 34 +- senlin/engine/scheduler.py | 2 +- senlin/engine/senlin_lock.py | 18 +- senlin/engine/service.py | 88 +- senlin/locale/de/LC_MESSAGES/senlin.po | 82 +- senlin/objects/action.py | 23 +- senlin/objects/cluster.py | 32 +- senlin/objects/cluster_lock.py | 4 + senlin/objects/cluster_policy.py | 9 - senlin/objects/fields.py | 14 + senlin/objects/node.py | 1 - senlin/objects/node_lock.py | 4 + senlin/objects/requests/actions.py | 11 + senlin/policies/batch_policy.py | 13 +- senlin/policies/health_policy.py | 268 ++-- senlin/policies/lb_policy.py | 9 +- senlin/policies/scaling_policy.py | 43 +- senlin/profiles/base.py | 69 +- senlin/profiles/os/nova/server.py | 163 +- .../api/middleware/test_version_negotiation.py | 16 +- .../unit/engine/actions/test_cluster_action.py | 42 +- .../unit/profiles/test_nova_server_validate.py | 6 +- senlin/version.py | 1 + setup.cfg | 4 +- tox.ini | 8 +- 196 files changed, 7123 insertions(+), 3423 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index c1c207aa..25e43337 100644 --- a/requirements.txt +++ b/requirements.txt @@ -14 +14 @@ microversion-parse>=0.2.1 # Apache-2.0 -openstacksdk>=0.11.2 # Apache-2.0 +openstacksdk>=0.24.0 # Apache-2.0 @@ -19,0 +20 @@ oslo.log>=3.36.0 # Apache-2.0 +oslo.reports>=1.18.0 # Apache-2.0 @@ -24,0 +26 @@ oslo.service!=1.28.1,>=1.24.0 # Apache-2.0 +oslo.upgradecheck>=0.1.0 # Apache-2.0
participants (1)
-
no-reply@openstack.org