[release-announce] [watcher] python-watcher 1.1.0 (pike)

no-reply at openstack.org no-reply at openstack.org
Thu Apr 13 15:28:18 UTC 2017


We joyfully announce the release of:

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

This release is part of the pike 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.1.0
^^^^^

New Features

* Check the creation time of the action plan, and set its state to
  SUPERSEDED if it has expired.

* Added SUSPENDED audit state

Changes in python-watcher 1.0.0..1.1.0
--------------------------------------

dbff432 Updated from global requirements
c6845c0 Added suspended audit state
b02cf3b Add gnocchi support in uniform_airflow strategy
4eeaa0a Add Apache License Content in index.rst
442e569 Optimize the link address
5d948e8 correct syntax error
f83a92f Updated from global requirements
1d05444 Optimize the link address
6de94cc Add gnocchi support in outlet_temp_control strategy
e9f8341 fixed syntax error in json
a139cca Replace py34 with py35
e549e43 Add gnocchi support in workload_balance strategy
8663c3a Add gnocchi plugin support for devstack
19d9b83 Updated from global requirements
af22899 Run Watcher-API behind mod-wsgi
fc33e18 oslo messaging notifications driver update
a3ee163 Use tox to generate a sample configuration file
4642a92 Add gnocchi support in VM-Workload-Consolidation strategy
69c53da Updated from global requirements
d53abb7 Fix for remove verbose option
4d3727e Use HostAddressOpt for opts that accept IP and hostnames
0750b93 Add gnocchi support in workload_stabilization strategy
a2cb02a Prevent the migration of VM with 'optimize' False in VM metadata
3778898 Add period input parameter to vm workload consolidation and outlet temp control strategy.
cde60d2 Add endpoint_type option for openstack clients.
e75dbfd Updated from global requirements
18aa50c Add gnocchi support in basic_consolidation strategy
54ce5f7 Imported Translations from Zanata
f605888 Remove log translations
0b213a8 Add Gnocchi datasource
38a3cbc exception when running 'watcher service list'
1386ce6 Remove old oslo.messaging transport aliases
38e4b48 stale the action plan
56ca542 Local copy of scenario test base class
6044b04 set eager=True for actionplan.list
6d81ac1 Use https instead of http
db077e8 Updated from global requirements
51bf7fe Updated from global requirements
bf0fd48 Updated from global requirements
77b4067 Updated from global requirements
e2d2fc6 Adding instance metadata into cluster data model
3c564ee Add Apache License content in conf.py file
f9ce21a [Fix gate]Update test requirement
5afcf7a Remove unused PNG files  in image_src directory
8f85169 Updated from global requirements
68e4bc4 Fix no endpoints of ceilometer in devstack environment setup.
9e7f7f5 Fix some typos in vm_workload_consolidation.py.
fceab52 Optimize audit process
24ab046 Reactivate watcher dashboard plugin in devstack/local.conf.controller
fd374d1 Add SUPERSEDED description
25789c9 Add Action Notification
a9b3534 Switch to use test_utils.call_until_true
f80c0c7 Adding additional details to notification logs
0d83354 Add checking audit state
67d44eb Fix the mapping between the instance and the node
8c1757f Remove support for py34
e55c73b Fix that remove 'strategy' attribute does not work.
04c9e03 Fix spelling error in NotificationEndpoint classes.
58711aa Fix log level error to warning
3ad5261 Fix incorrect auto trigger flag
5b2cdb5 Using items() instead of six.iteritems()
b6a96e0 Update reno for stable/ocata
65f9646 Use RPC cast() to be asynchronous


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

CONTRIBUTING.rst                                   |   4 +-
HACKING.rst                                        |   2 +-
README.rst                                         |  10 +-
devstack/files/apache-watcher-api.template         |  42 ++
devstack/lib/watcher                               |  69 ++-
devstack/local.conf.controller                     |  11 +-
.../action-execution-error.json                    |  51 ++
.../action-execution-start.json                    |  41 ++
.../plantuml/action_plan_state_machine.png         | Bin 59207 -> 0 bytes
.../image_src/plantuml/audit_state_machine.txt     |   3 +
.../plantuml/watcher_db_schema_diagram.png         | Bin 73517 -> 0 bytes
.../strategies/vm_workload_consolidation.rst       |  14 +
etc/apache2/watcher                                |  33 ++
.../notes/stale-action-plan-b6a6b08df873c128.yaml  |   4 +-
.../suspended-audit-state-07f998c94e9d9a47.yaml    |   4 +
releasenotes/source/conf.py                        |  13 +
releasenotes/source/index.rst                      |  15 +
.../source/locale/fr/LC_MESSAGES/releasenotes.po   |  33 ++
releasenotes/source/ocata.rst                      |   6 +
requirements.txt                                   |  25 +-
setup.cfg                                          |   1 -
setup.py                                           |   2 +-
test-requirements.txt                              |   4 +-
tox.ini                                            |   4 +-
watcher/api/app.wsgi                               |  40 ++
watcher/api/controllers/v1/audit.py                |  25 +-
watcher/api/controllers/v1/audit_template.py       |   1 +
watcher/api/controllers/v1/service.py              |  13 +-
watcher/api/controllers/v1/utils.py                |  15 +
watcher/api/middleware/parsable_error.py           |   4 +-
watcher/applier/actions/migration.py               |  14 +-
watcher/applier/actions/resize.py                  |   6 +-
watcher/applier/rpcapi.py                          |   2 +-
watcher/applier/workflow_engine/base.py            |  95 ++-
watcher/applier/workflow_engine/default.py         |  65 +--
watcher/cmd/api.py                                 |   7 +-
watcher/cmd/applier.py                             |   3 +-
watcher/cmd/decisionengine.py                      |   3 +-
watcher/cmd/sync.py                                |   5 +-
watcher/common/clients.py                          |  41 +-
watcher/common/context.py                          |   3 +-
watcher/common/exception.py                        |  20 +-
watcher/common/rpc.py                              |  20 +-
watcher/common/utils.py                            |   5 +-
watcher/conf/__init__.py                           |   2 +
watcher/conf/api.py                                |   7 +-
watcher/conf/ceilometer_client.py                  |   7 +-
watcher/conf/cinder_client.py                      |   7 +-
watcher/conf/decision_engine.py                    |   9 +
watcher/conf/glance_client.py                      |   7 +-
watcher/conf/gnocchi_client.py                     |  47 ++
watcher/conf/monasca_client.py                     |   7 +-
watcher/conf/neutron_client.py                     |   7 +-
watcher/conf/nova_client.py                        |   7 +-
watcher/conf/service.py                            |  15 +-
watcher/datasource/gnocchi.py                      |  92 +++
watcher/db/purge.py                                |  24 +-
watcher/decision_engine/audit/base.py              |  23 +-
watcher/decision_engine/audit/continuous.py        |   6 +-
watcher/decision_engine/model/collector/nova.py    |   6 +-
watcher/decision_engine/model/element/instance.py  |   1 +
watcher/decision_engine/model/model_root.py        |   7 +
watcher/decision_engine/model/notification/nova.py |  81 +--
watcher/decision_engine/planner/weight.py          |  19 +-
.../planner/workload_stabilization.py              |   3 +-
watcher/decision_engine/rpcapi.py                  |   2 +-
watcher/decision_engine/scheduling.py              |  16 +
watcher/decision_engine/scope/default.py           |   7 +-
.../decision_engine/strategy/strategies/base.py    |  18 +
.../strategy/strategies/basic_consolidation.py     |  90 ++-
.../strategy/strategies/outlet_temp_control.py     |  84 ++-
.../strategy/strategies/uniform_airflow.py         | 152 +++--
.../strategies/vm_workload_consolidation.py        | 225 ++++++--
.../strategy/strategies/workload_balance.py        |  79 ++-
.../strategy/strategies/workload_stabilization.py  | 101 +++-
watcher/decision_engine/sync.py                    |  53 +-
watcher/hacking/checks.py                          |   3 +-
watcher/locale/fr/LC_MESSAGES/watcher.po           | 640 ---------------------
watcher/notifications/__init__.py                  |   1 +
watcher/notifications/action.py                    | 302 ++++++++++
watcher/notifications/action_plan.py               |  46 +-
watcher/notifications/base.py                      |   2 +-
watcher/objects/action.py                          |   6 +
watcher/objects/action_plan.py                     |  25 +-
watcher/objects/audit.py                           |  26 +
watcher/objects/fields.py                          |  23 +
.../test_default_workflow_engine.py                |  76 ++-
.../decision_engine/audit/test_audit_handlers.py   |  39 +-
.../decision_engine/cluster/test_nova_cdmc.py      |   1 +
.../decision_engine/model/ceilometer_metrics.py    |   2 +-
.../decision_engine/model/data/scenario_1.xml      |  70 +--
.../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 +-
.../model/faker_cluster_and_metrics.py             |  83 +++
.../decision_engine/model/faker_cluster_state.py   |   2 +
.../model/notification/test_nova_notifications.py  |   1 -
.../decision_engine/planner/test_weight_planner.py |  18 +-
.../strategies/test_basic_consolidation.py         |  34 ++
.../strategies/test_outlet_temp_control.py         |  68 ++-
.../strategy/strategies/test_uniform_airflow.py    |  62 +-
.../strategies/test_vm_workload_consolidation.py   |  69 ++-
.../strategy/strategies/test_workload_balance.py   |  67 ++-
.../strategies/test_workload_stabilization.py      |  79 ++-
.../notifications/test_action_notification.py      | 355 ++++++++++++
147 files changed, 4027 insertions(+), 1363 deletions(-)


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

diff --git a/requirements.txt b/requirements.txt
index 08bb48e..c2221da 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -13,3 +13,3 @@ oslo.cache>=1.5.0 # Apache-2.0
-oslo.config!=3.18.0,>=3.14.0 # Apache-2.0
-oslo.context>=2.9.0 # Apache-2.0
-oslo.db>=4.15.0 # Apache-2.0
+oslo.config>=3.22.0 # Apache-2.0
+oslo.context>=2.12.0 # Apache-2.0
+oslo.db>=4.19.0 # Apache-2.0
@@ -17,2 +17,2 @@ oslo.i18n>=2.1.0 # Apache-2.0
-oslo.log>=3.11.0 # Apache-2.0
-oslo.messaging>=5.14.0 # Apache-2.0
+oslo.log>=3.22.0 # Apache-2.0
+oslo.messaging>=5.19.0 # Apache-2.0
@@ -23 +23 @@ oslo.service>=1.10.0 # Apache-2.0
-oslo.utils>=3.18.0 # Apache-2.0
+oslo.utils>=3.20.0 # Apache-2.0
@@ -26 +26 @@ PasteDeploy>=1.5.0 # MIT
-pbr>=1.8 # Apache-2.0
+pbr!=2.1.0,>=2.0.0 # Apache-2.0
@@ -29,0 +30 @@ voluptuous>=0.8.9 # BSD License
+gnocchiclient>=2.7.0 # Apache-2.0
@@ -31 +32 @@ python-ceilometerclient>=2.5.0 # Apache-2.0
-python-cinderclient!=1.7.0,!=1.7.1,>=1.6.0 # Apache-2.0
+python-cinderclient>=2.0.1 # Apache-2.0
@@ -36 +37 @@ python-neutronclient>=5.1.0 # Apache-2.0
-python-novaclient!=7.0.0,>=6.0.0 # Apache-2.0
+python-novaclient>=7.1.0 # Apache-2.0
@@ -39,2 +40,2 @@ six>=1.9.0 # MIT
-SQLAlchemy<1.1.0,>=1.0.10 # MIT
-stevedore>=1.17.1 # Apache-2.0
+SQLAlchemy!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8,>=1.0.10 # MIT
+stevedore>=1.20.0 # Apache-2.0
@@ -42 +43 @@ taskflow>=2.7.0 # Apache-2.0
-WebOb>=1.6.0 # MIT
+WebOb>=1.7.1 # MIT
diff --git a/test-requirements.txt b/test-requirements.txt
index cf035ca..705a075 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -8 +8 @@ freezegun>=0.3.6 # Apache-2.0
-hacking<0.11,>=0.10.2
+hacking!=0.13.0,<0.14,>=0.12.0 # Apache-2.0
@@ -19 +19 @@ oslosphinx>=4.7.0 # Apache-2.0
-sphinx!=1.3b1,<1.4,>=1.2.1 # BSD
+sphinx>=1.5.1 # BSD





More information about the Release-announce mailing list