[release-announce] python-watcher 1.10.0 (rocky)

no-reply at openstack.org no-reply at openstack.org
Fri Jun 15 14:14:29 UTC 2018


We exuberantly announce the release of:

python-watcher 1.10.0: OpenStack Watcher provides a flexible and
scalable resource optimization service for multi-tenant OpenStack-
based clouds.

This release is part of the rocky release series.

The source is available from:

    https://github.com/openstack/watcher

Download the package from:

    https://tarballs.openstack.org/watcher/

Please report issues through launchpad:

    https://bugs.launchpad.net/watcher

For more details, please see below.

1.10.0
^^^^^^

New Features

* Feature to exclude instances from audit scope based on project_id
  is added. Now instances from particular project in OpenStack can be
  excluded from audit defining scope in audit templates.

* Added a strategy for one compute node maintenance, without having
  the user's application been interrupted. If given one backup node,
  the strategy will firstly migrate all instances from the maintenance
  node to the backup node. If the backup node is not provided, it will
  migrate all instances, relying on nova-scheduler.

Changes in python-watcher 1.9.0..1.10.0
---------------------------------------

44fc7d5 Restore requirements versions
ca9644f add doc for host_maintenance
44061cf Update pypi url to new url
3c83077 Update storage CDM collector
d8872a7 Replace port 35357 with 5000 for test_clients.py
7556d19 Add Cinder Cluster Data Model Collector test case
58276ec add strategy host_maintenance
36ad9e1 Trivial: update url to new url
cdb1975 Fix to reuse RabbitMQ connection
ff57eb7 Refactor watcher API for Action Plan Start
904b72c Update auth_url in install docs
d23e7f0 Updated tests on bug, when get list returns deleted items
3a5b423 Fix the openstack endpoint create failed
b586612 Update the default value for nova api_verison
ad1593b Moved do_execute method to AuditHandler class
7f6a300 Fix typo in StorageCapacityBalance
93a8ba8 Grouped _add_*_filters methods together
415bab4 Replace of private _create methods in tests
fc388d8 Exclude Project By Audit Scope
b290ad7 add strategy doc:storage capacity balance
8c8e58e Update requirements
171654c add unittest for execute_audit in audit/continuous.py
0157fa7 amend delete action policy
aa74817 Added _get_model_list base method for all get_*_list methods


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

lower-constraints.txt                              |   2 +
...dit-scope-exclude-project-511a7720aac00dff.yaml |   6 +
...host-maintenance-strategy-41f640927948fb56.yaml |   9 +
requirements.txt                                   |  76 ++---
setup.cfg                                          |   2 +
test-requirements.txt                              |  28 +-
watcher/api/controllers/v1/action_plan.py          |  40 ++-
watcher/api/controllers/v1/audit.py                |   8 +-
watcher/api/controllers/v1/audit_template.py       |   4 +-
watcher/common/exception.py                        |   8 +
watcher/common/policies/action_plan.py             |  11 +
watcher/db/sqlalchemy/api.py                       | 226 ++++++--------
watcher/decision_engine/audit/base.py              |  13 +-
watcher/decision_engine/audit/continuous.py        |   5 +-
watcher/decision_engine/audit/oneshot.py           |   7 -
watcher/decision_engine/goal/goals.py              |  25 ++
watcher/decision_engine/model/collector/cinder.py  |  13 +
watcher/decision_engine/model/collector/nova.py    |  15 +-
watcher/decision_engine/model/element/instance.py  |   1 +
watcher/decision_engine/model/notification/nova.py |   1 +
watcher/decision_engine/scope/compute.py           |  19 +-
.../strategy/strategies/__init__.py                |   4 +-
.../decision_engine/strategy/strategies/base.py    |  10 +
.../strategy/strategies/host_maintenance.py        | 331 +++++++++++++++++++++
.../strategies/storage_capacity_balance.py         |   2 +-
.../decision_engine/audit/test_audit_handlers.py   |  29 ++
.../decision_engine/cluster/test_cinder_cdmc.py    | 152 ++++++++++
.../decision_engine/cluster/test_nova_cdmc.py      |   1 +
.../decision_engine/model/data/scenario_1.xml      |  70 ++---
.../data/scenario_1_with_1_node_unavailable.xml    |  72 ++---
.../model/data/scenario_1_with_metrics.xml         |   4 +-
.../model/data/scenario_2_with_metrics.xml         |  12 +-
.../model/data/scenario_3_with_2_nodes.xml         |   4 +-
.../model/data/scenario_3_with_metrics.xml         |   8 +-
.../model/data/scenario_5_with_instance_disk_0.xml |   2 +-
.../model/data/scenario_6_with_2_nodes.xml         |   8 +-
.../model/data/scenario_7_with_2_nodes.xml         |   8 +-
.../model/data/scenario_8_with_4_nodes.xml         |  12 +-
...nario_9_with_3_active_plus_1_disabled_nodes.xml |  12 +-
.../decision_engine/model/faker_cluster_state.py   |   4 +-
.../strategy/strategies/test_host_maintenance.py   | 206 +++++++++++++
62 files changed, 1680 insertions(+), 553 deletions(-)


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

diff --git a/requirements.txt b/requirements.txt
index 38fb23d..a9621df 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -5,3 +5,3 @@
-apscheduler>=3.0.5 # MIT License
-enum34>=1.0.4;python_version=='2.7' or python_version=='2.6' or python_version=='3.3' # BSD
-jsonpatch!=1.20,>=1.16 # BSD
+apscheduler>=3.5.1 # MIT License
+enum34>=1.1.6;python_version=='2.7' or python_version=='2.6' or python_version=='3.3' # BSD
+jsonpatch>=1.21 # BSD
@@ -10,3 +10,3 @@ jsonschema<3.0.0,>=2.6.0 # MIT
-keystonemiddleware>=4.17.0 # Apache-2.0
-lxml!=3.7.0,>=3.4.1 # BSD
-croniter>=0.3.4 # MIT License
+keystonemiddleware>=4.21.0 # Apache-2.0
+lxml>=4.1.1 # BSD
+croniter>=0.3.20 # MIT License
@@ -14 +14 @@ oslo.concurrency>=3.26.0 # Apache-2.0
-oslo.cache>=1.26.0 # Apache-2.0
+oslo.cache>=1.29.0 # Apache-2.0
@@ -16,22 +16,22 @@ oslo.config>=5.2.0 # Apache-2.0
-oslo.context>=2.19.2 # Apache-2.0
-oslo.db>=4.27.0 # Apache-2.0
-oslo.i18n>=3.15.3 # Apache-2.0
-oslo.log>=3.36.0 # Apache-2.0
-oslo.messaging>=5.29.0 # Apache-2.0
-oslo.policy>=1.30.0 # Apache-2.0
-oslo.reports>=1.18.0 # Apache-2.0
-oslo.serialization!=2.19.1,>=2.18.0 # Apache-2.0
-oslo.service!=1.28.1,>=1.24.0 # Apache-2.0
-oslo.utils>=3.33.0 # Apache-2.0
-oslo.versionedobjects>=1.31.2 # Apache-2.0
-PasteDeploy>=1.5.0 # MIT
-pbr!=2.1.0,>=2.0.0 # Apache-2.0
-pecan!=1.0.2,!=1.0.3,!=1.0.4,!=1.2,>=1.0.0 # BSD
-PrettyTable<0.8,>=0.7.1 # BSD
-voluptuous>=0.8.9 # BSD License
-gnocchiclient>=3.3.1 # Apache-2.0
-python-ceilometerclient>=2.5.0 # Apache-2.0
-python-cinderclient>=3.3.0 # Apache-2.0
-python-glanceclient>=2.8.0 # Apache-2.0
-python-keystoneclient>=3.8.0 # Apache-2.0
-python-monascaclient>=1.7.0 # Apache-2.0
+oslo.context>=2.20.0 # Apache-2.0
+oslo.db>=4.35.0 # Apache-2.0
+oslo.i18n>=3.20.0 # Apache-2.0
+oslo.log>=3.37.0 # Apache-2.0
+oslo.messaging>=5.36.0 # Apache-2.0
+oslo.policy>=1.34.0 # Apache-2.0
+oslo.reports>=1.27.0 # Apache-2.0
+oslo.serialization>=2.25.0 # Apache-2.0
+oslo.service>=1.30.0 # Apache-2.0
+oslo.utils>=3.36.0 # Apache-2.0
+oslo.versionedobjects>=1.32.0 # Apache-2.0
+PasteDeploy>=1.5.2 # MIT
+pbr>=3.1.1 # Apache-2.0
+pecan>=1.2.1 # BSD
+PrettyTable<0.8,>=0.7.2 # BSD
+voluptuous>=0.11.1 # BSD License
+gnocchiclient>=7.0.1 # Apache-2.0
+python-ceilometerclient>=2.9.0 # Apache-2.0
+python-cinderclient>=3.5.0 # Apache-2.0
+python-glanceclient>=2.9.1 # Apache-2.0
+python-keystoneclient>=3.15.0 # Apache-2.0
+python-monascaclient>=1.10.0 # Apache-2.0
@@ -39,2 +39,2 @@ python-neutronclient>=6.7.0 # Apache-2.0
-python-novaclient>=9.1.0 # Apache-2.0
-python-openstackclient>=3.12.0 # Apache-2.0
+python-novaclient>=10.1.0 # Apache-2.0
+python-openstackclient>=3.14.0 # Apache-2.0
@@ -42,7 +42,7 @@ python-ironicclient>=2.3.0 # Apache-2.0
-six>=1.10.0 # MIT
-SQLAlchemy!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8,>=1.0.10 # MIT
-stevedore>=1.20.0 # Apache-2.0
-taskflow>=2.16.0 # Apache-2.0
-WebOb>=1.7.1 # MIT
-WSME>=0.8.0 # MIT
-networkx<2.0,>=1.10 # BSD
+six>=1.11.0 # MIT
+SQLAlchemy>=1.2.5 # MIT
+stevedore>=1.28.0 # Apache-2.0
+taskflow>=3.1.0 # Apache-2.0
+WebOb>=1.7.4 # MIT
+WSME>=0.9.2 # MIT
+networkx>=1.11 # BSD
diff --git a/test-requirements.txt b/test-requirements.txt
index b475aa2..8ef99de 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -5,3 +5,3 @@
-coverage!=4.4,>=4.0 # Apache-2.0
-doc8>=0.6.0 # Apache-2.0
-freezegun>=0.3.6 # Apache-2.0
+coverage!=4.4 # Apache-2.0
+doc8 # Apache-2.0
+freezegun # Apache-2.0
@@ -9,6 +9,6 @@ hacking!=0.13.0,<0.14,>=0.12.0 # Apache-2.0
-mock>=2.0.0 # BSD
-oslotest>=3.2.0 # Apache-2.0
-os-testr>=1.0.0 # Apache-2.0
-testrepository>=0.0.18 # Apache-2.0/BSD
-testscenarios>=0.4 # Apache-2.0/BSD
-testtools>=2.2.0 # MIT
+mock # BSD
+oslotest # Apache-2.0
+os-testr # Apache-2.0
+testrepository # Apache-2.0/BSD
+testscenarios # Apache-2.0/BSD
+testtools # MIT
@@ -17,3 +17,3 @@ testtools>=2.2.0 # MIT
-openstackdocstheme>=1.18.1 # Apache-2.0
-sphinx!=1.6.6,!=1.6.7,>=1.6.2 # BSD
-sphinxcontrib-pecanwsme>=0.8.0 # Apache-2.0
+openstackdocstheme # Apache-2.0
+sphinx!=1.6.6,!=1.6.7 # BSD
+sphinxcontrib-pecanwsme # Apache-2.0
@@ -20,0 +21,2 @@ sphinxcontrib-pecanwsme>=0.8.0 # Apache-2.0
+# api-ref
+os-api-ref # Apache-2.0
@@ -23 +25 @@ sphinxcontrib-pecanwsme>=0.8.0 # Apache-2.0
-reno>=2.5.0 # Apache-2.0
+reno # Apache-2.0






More information about the Release-announce mailing list