[release-announce] [senlin] senlin-dashboard 0.6.0 (ocata)

no-reply at openstack.org no-reply at openstack.org
Thu Feb 16 10:10:37 UTC 2017


We are chuffed to announce the release of:

senlin-dashboard 0.6.0: Senlin Dashboard

This release is part of the ocata release series.

Download the package from:

    https://tarballs.openstack.org/senlin-dashboard/

Please report issues through launchpad:

    https://bugs.launchpad.net/senlin-dashboard

For more details, please see below.

0.6.0
^^^^^

AngularJS-based panels are implemented. These new panels have most of
functions in exist Django-based panels. Users can switch to AngularJS-
based panels by editing settings in
"_59_toggle_angular_senlin_dashboard.py" .


New Features
************

* Five panels, profiles, nodes, clusters, policies and receivers,
  are implemented as AngularJS-based. These panels uses recent Horizon
  framework features, e.g. angular-json-schema, common "views" for
  AngularJS-based plugin, initAction instead initScope, and so on.
  Also these source codes are tested with Jasmine and Eslint to ensure
  its quality.

Changes in senlin-dashboard 0.5.0..0.6.0
----------------------------------------

80ba54b Update README file
4acf7dc Reorganize docs
ca8f66c Imported Translations from Zanata
a1c34b3 Updated from global requirements
8c7dd17 Add senlin-dashboard installation guide
03c2baa Cluster status should be translatable
abaab04 Use type rather than type_name
a43185c Imported Translations from Zanata
2e034fa Node Status should be translatable
56ae3f5 Cleanup unnecessary blank line
2c2b062 Use more readable toast message
824c6af Fix typo in senlin rest api
93f70cd Imported Translations from Zanata
63be8a7 Cleanup help messages
7005f9f Add policy for delete resources
898bce5 Add file loader for spec of policy
904995c Use ModalFormService instead wizard-modal
7e9be6a Display error message when create/update failed
9a9e779 Clean up initAction and scope
54fff1a Imported Translations from Zanata
2bdff6d Add release note for Angularization
82d2831 Imported Translations from Zanata
1ace5ba Add create action into Receiver panel
00ee56c Add update action for cluster
73c253d Add delete action for cluster
8b0701a Add create and update actions for policy
e1277bf Implement action updating cluster policies
62f461b Updated from global requirements
261db01 Imported Translations from Zanata
7b6725b Add delete action for policies panel
0a1710e Add details view into Policies panel
f677629 Add angular policies table
ae382d7 Address receiver panel to recent Horizon framework
c5d63ac Updated from global requirements
fa37e18 Imported Translations from Zanata
ed2c1b4 Display selected panel name on browser title bar
b90afcb Add update profile action for angular profile panel
b996b26 Following up patch of ddf8b00fe49c571994955eff25c1e2d6e7255c06
bf978f6 Move _50_senlin.py into senlin_dashboard/enabled folder
0ba8e29 Add node create/update actions
7252b7c Imported Translations from Zanata
afe9a51 Fix typo on error for profile creation
ad35de9 Add create cluster action
e361f9f Following patch for angular cluster table
e5d32d7 Add delete action for angular nodes panel
5116c96 Angularize node tables
f9082b8 angularize cluster tables
0eb27b6 Updated from global requirements
d335c67 Replace mox with mock
3f0fcf4 Show team and repo badges on README
44971e1 Use proper assert check
c126d9f Add JS tests for profile create service
89c4057 Improve translate attribute for profile creation workflow
a89d2b2 Update karma coverage threshold values
decc497 Update reno for stable/newton
c7910fd Add JS tests for receiver delete service
ab5500f Add filterFacets for angular profile table
914a788 Add JS tests for profile delete service
ffd2dcd Updated from global requirements
68a108c Remove unnecessary variable assignment
c9ff1fe Add spec file for profiles.service.js
95ad9bb Imported Translations from Zanata
9e130f6 Updated from global requirements
189869b Fix the wrong url to the policy detail page in cluster detail page
c462a9c Change an attribute name from 'type' to 'type_name'
1cfb679 Return single promise rather than array-like promises
1ff23c4 Update karma coverage threshold values
54e44c3 [Improve Test Coverage] Add spec file for senlin.service.js
948a014 Clean up profile.service.js
c75a98b Add 'Action' info in receiver detail page
fe08fd4 Update REST API docstring
c1c470e Add 'type_name' to Profile class to fix errors related with profile.type
29fb73a Add create profile action for angular profile panel
70ca41f Add the detail link for the cluster in receiver detail page
0132f58 Updated from global requirements
19b99bd Add setting file for enabling Angularized panel
e58d54b Add angurlar toggle feature for receivers panel
c01005a Add delete action for angular profile panel
5c8d65d Add allowed function Cluster/Node delete action
f08699e angularize profile tables
1330741 Fix typo
7d61b7d Imported Translations from Zanata
216a313 Fix the update time not display error
87ab36a Add node recover action in table row actions
c8490ba Add spec file for receiver action module
5668275 Remove static from .gitignore
e009376 Fix no-redeclare warning in js lint
60276a7 Add missing RecoverCluster row actions
906db5d Batch action should check datum
0d7348e Return APIResourceWrapper object for senlin api
ff9bb6e Add allowed function Cluster/Node recover action
eadcb96 Cleanup .gitignore and tox.ini
9f5651c Fix typo
e10c5c0 Cleanup allowed() for cluster/node action
c27e50b  Add cluster recover for cluster object
35d0589 Add node recover for node object
155087b Add cluster check for cluster object
0a69d56 Add node check for node object
07b7572 Relocate policies in cluster detial overview
6bb7da4 Add api test for senlin receiver_list
1f44c21 Add sticky for tab group
34cee46 Remove unused paramters of pagination utils
f4324d3  Enable pagination in event table
35338b9 Define modal header and submit in views instead of template
3884b47 Fix profile update error


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

.gitignore                                         |  54 +-
README.rst                                         |  40 +-
_50_senlin.py.example                              |  16 -
_59_toggle_angular_senlin_dashboard.py.example     |   7 +
.../notes/angularize-ac693bf52216fdf5.yaml         |  16 +
releasenotes/source/index.rst                      |   1 +
.../source/locale/ja/LC_MESSAGES/releasenotes.po   |  34 +-
releasenotes/source/newton.rst                     |   6 +
requirements.txt                                   |   4 +-
senlin_dashboard/api/rest/__init__.py              |   9 +-
senlin_dashboard/api/rest/senlin.py                | 457 +++++++++++++++-
senlin_dashboard/api/senlin.py                     | 178 ++++--
senlin_dashboard/api/utils.py                      |  27 +-
senlin_dashboard/cluster/clusters/forms.py         |   6 +-
senlin_dashboard/cluster/clusters/tables.py        |  61 +++
senlin_dashboard/cluster/clusters/tabs.py          |  27 +-
.../clusters/templates/clusters/_create.html       |   7 -
.../templates/clusters/_detail_overview.html       |  16 +-
.../templates/clusters/_manage_policies.html       |   5 -
senlin_dashboard/cluster/clusters/urls.py          |  28 +-
senlin_dashboard/cluster/clusters/views.py         |  15 +-
senlin_dashboard/cluster/ngreceivers/__init__.py   |   0
senlin_dashboard/cluster/ngreceivers/panel.py      |  25 -
senlin_dashboard/cluster/ngreceivers/urls.py       |  21 -
senlin_dashboard/cluster/ngreceivers/views.py      |  17 -
senlin_dashboard/cluster/nodes/forms.py            |  61 ++-
senlin_dashboard/cluster/nodes/tables.py           |  61 +++
senlin_dashboard/cluster/nodes/tabs.py             |  30 +-
.../cluster/nodes/templates/nodes/_create.html     |   7 -
.../cluster/nodes/templates/nodes/_update.html     |   7 -
senlin_dashboard/cluster/nodes/urls.py             |  28 +-
senlin_dashboard/cluster/nodes/views.py            |  12 +-
senlin_dashboard/cluster/policies/forms.py         |  17 +
.../policies/templates/policies/_create.html       |  11 +-
.../templates/policies/_detail_overview.html       |   2 +-
.../policies/templates/policies/_update.html       |   7 -
senlin_dashboard/cluster/policies/urls.py          |  28 +-
senlin_dashboard/cluster/policies/views.py         |  12 +-
senlin_dashboard/cluster/profiles/forms.py         |   6 +-
senlin_dashboard/cluster/profiles/panel.py         |   2 +
.../profiles/templates/profiles/_create.html       |  12 +-
.../profiles/templates/profiles/_update.html       |   7 -
senlin_dashboard/cluster/profiles/urls.py          |  29 +-
senlin_dashboard/cluster/profiles/views.py         |  12 +-
senlin_dashboard/cluster/receivers/forms.py        |  22 +-
.../receivers/templates/receivers/_create.html     |   7 -
.../templates/receivers/_detail_overview.html      |   4 +-
senlin_dashboard/cluster/receivers/urls.py         |  25 +-
senlin_dashboard/cluster/receivers/views.py        |   9 +-
senlin_dashboard/conf/README.rst                   |   2 +-
senlin_dashboard/enabled/_50_senlin.py             |  30 +
senlin_dashboard/enabled/__init__.py               |   0
senlin_dashboard/karma.conf.js                     |   9 +-
senlin_dashboard/locale/ja/LC_MESSAGES/django.po   | 104 +++-
senlin_dashboard/locale/ja/LC_MESSAGES/djangojs.po | 606 ++++++++++++++++++++-
.../locale/zh_CN/LC_MESSAGES/django.po             |  22 +-
.../locale/zh_CN/LC_MESSAGES/djangojs.po           |  88 ---
senlin_dashboard/static/app/core/cluster.module.js |   5 +
senlin_dashboard/static/app/core/cluster.scss      |   2 +
.../app/core/clusters/actions/actions.module.js    |  96 ++++
.../core/clusters/actions/actions.module.spec.js   |  46 ++
.../core/clusters/actions/create/cluster.help.html |  18 +
.../core/clusters/actions/create/create.service.js |  92 ++++
.../clusters/actions/create/create.service.spec.js |  93 ++++
.../app/core/clusters/actions/delete.service.js    | 157 ++++++
.../core/clusters/actions/delete.service.spec.js   | 125 +++++
.../manage-policy/manage-policy-detail.html        |  17 +
.../actions/manage-policy/manage-policy-model.js   |  51 ++
.../manage-policy-workflow.service.js              |  50 ++
.../manage-policy/manage-policy.controller.js      |  68 +++
.../actions/manage-policy/manage-policy.help.html  |   5 +
.../actions/manage-policy/manage-policy.html       |  70 +++
.../actions/manage-policy/manage-policy.service.js | 123 +++++
.../core/clusters/actions/update/cluster.help.html |  12 +
.../core/clusters/actions/update/update.service.js | 108 ++++
.../clusters/actions/update/update.service.spec.js |  84 +++
.../clusters/actions/workflow/workflow.service.js  | 164 ++++++
.../actions/workflow/workflow.service.spec.js      |  72 +++
.../static/app/core/clusters/clusters.module.js    | 127 +++++
.../app/core/clusters/clusters.module.spec.js      |  24 +
.../static/app/core/clusters/clusters.service.js   |  85 +++
.../app/core/clusters/clusters.service.spec.js     |  66 +++
.../app/core/clusters/details/details.module.js    |  53 ++
.../static/app/core/clusters/details/drawer.html   |   5 +
.../core/clusters/details/overview.controller.js   |  40 ++
.../static/app/core/clusters/details/overview.html |  14 +
.../static/app/core/clusters/panel.html            |   4 +
.../static/app/core/events/events.module.js        | 120 ++++
.../static/app/core/events/events.module.spec.js   |  24 +
.../static/app/core/events/events.service.js       |  49 ++
.../static/app/core/events/events.service.spec.js  |  41 ++
.../static/app/core/events/events_drawer.html      |   5 +
.../app/core/nodes/actions/actions.module.js       |  86 +++
.../app/core/nodes/actions/actions.module.spec.js  |  24 +
.../core/nodes/actions/create/create.service.js    |  92 ++++
.../nodes/actions/create/create.service.spec.js    |  83 +++
.../app/core/nodes/actions/create/node.help.html   |  14 +
.../app/core/nodes/actions/delete.service.js       | 154 ++++++
.../app/core/nodes/actions/delete.service.spec.js  | 123 +++++
.../app/core/nodes/actions/update/node.help.html   |  12 +
.../core/nodes/actions/update/update.service.js    | 106 ++++
.../nodes/actions/update/update.service.spec.js    |  83 +++
.../nodes/actions/workflow/workflow.service.js     | 159 ++++++
.../actions/workflow/workflow.service.spec.js      |  64 +++
.../app/core/nodes/details/details.module.js       |  61 +++
.../static/app/core/nodes/details/drawer.html      |   6 +
.../app/core/nodes/details/events.controller.js    |  36 ++
.../static/app/core/nodes/details/events.html      |   6 +
.../app/core/nodes/details/overview.controller.js  |  36 ++
.../static/app/core/nodes/details/overview.html    |  16 +
.../static/app/core/nodes/nodes.module.js          | 168 ++++++
.../static/app/core/nodes/nodes.module.spec.js     |  24 +
senlin_dashboard/static/app/core/nodes/nodes.scss  |   3 +
.../static/app/core/nodes/nodes.service.js         |  82 +++
.../static/app/core/nodes/nodes.service.spec.js    |  58 ++
senlin_dashboard/static/app/core/nodes/panel.html  |   4 +
.../core/openstack-service-api/senlin.service.js   | 487 ++++++++++++++++-
.../openstack-service-api/senlin.service.spec.js   | 169 ++++++
.../app/core/policies/actions/actions.module.js    |  86 +++
.../core/policies/actions/actions.module.spec.js   |  44 ++
.../core/policies/actions/create/create.service.js |  89 +++
.../policies/actions/create/create.service.spec.js |  79 +++
.../app/core/policies/actions/delete.service.js    | 157 ++++++
.../core/policies/actions/delete.service.spec.js   | 123 +++++
.../core/policies/actions/update/update.service.js | 100 ++++
.../policies/actions/update/update.service.spec.js |  90 +++
.../actions/workflow/load-file.controller.js       |  55 ++
.../actions/workflow/load-file.controller.spec.js  |  42 ++
.../core/policies/actions/workflow/load-file.html  |   7 +
.../policies/actions/workflow/policy.help.html     |  13 +
.../policies/actions/workflow/workflow.service.js  | 116 ++++
.../actions/workflow/workflow.service.spec.js      |  53 ++
.../app/core/policies/details/details.module.js    |  53 ++
.../static/app/core/policies/details/drawer.html   |   6 +
.../core/policies/details/overview.controller.js   |  36 ++
.../static/app/core/policies/details/overview.html |  15 +
.../static/app/core/policies/panel.html            |   4 +
.../static/app/core/policies/policies.module.js    | 115 ++++
.../app/core/policies/policies.module.spec.js      |  24 +
.../static/app/core/policies/policies.service.js   |  82 +++
.../app/core/policies/policies.service.spec.js     |  58 ++
.../app/core/profiles/actions/actions.module.js    |  87 +++
.../core/profiles/actions/actions.module.spec.js   |  24 +
.../core/profiles/actions/create/create.service.js | 104 ++++
.../profiles/actions/create/create.service.spec.js |  80 +++
.../core/profiles/actions/create/profile.help.html |  15 +
.../app/core/profiles/actions/delete.service.js    | 154 ++++++
.../core/profiles/actions/delete.service.spec.js   | 123 +++++
.../core/profiles/actions/update/profile.help.html |   8 +
.../core/profiles/actions/update/update.service.js | 105 ++++
.../profiles/actions/update/update.service.spec.js |  90 +++
.../actions/workflow/load-file.controller.js       |  55 ++
.../actions/workflow/load-file.controller.spec.js  |  42 ++
.../core/profiles/actions/workflow/load-file.html  |   7 +
.../profiles/actions/workflow/workflow.service.js  | 126 +++++
.../actions/workflow/workflow.service.spec.js      |  56 ++
.../app/core/profiles/details/details.module.js    |  53 ++
.../static/app/core/profiles/details/drawer.html   |   5 +
.../core/profiles/details/overview.controller.js   |  40 ++
.../static/app/core/profiles/details/overview.html |  14 +
.../static/app/core/profiles/panel.html            |   4 +
.../static/app/core/profiles/profiles.module.js    | 118 ++++
.../app/core/profiles/profiles.module.spec.js      |  24 +
.../static/app/core/profiles/profiles.scss         |   3 +
.../static/app/core/profiles/profiles.service.js   |  83 +++
.../app/core/profiles/profiles.service.spec.js     |  59 ++
.../app/core/receivers/actions/actions.module.js   |  21 +-
.../core/receivers/actions/actions.module.spec.js  |  44 ++
.../app/core/receivers/actions/create.service.js   |  91 ++++
.../core/receivers/actions/create.service.spec.js  |  83 +++
.../app/core/receivers/actions/delete.service.js   |  34 +-
.../core/receivers/actions/delete.service.spec.js  | 124 +++++
.../app/core/receivers/actions/receiver.help.html  |  12 +
.../static/app/core/receivers/actions/workflow.js  | 160 ++++++
.../app/core/receivers/actions/workflow.spec.js    |  58 ++
.../app/core/receivers/details/details.module.js   |  14 +-
.../static/app/core/receivers/details/drawer.html  |  26 +-
.../core/receivers/details/overview.controller.js  |   8 -
.../app/core/receivers/details/overview.html       |  29 +-
.../static/app/core/receivers/panel.html           |   2 +-
.../static/app/core/receivers/receivers.module.js  |  94 ++--
.../static/app/core/receivers/receivers.service.js |  82 +++
.../app/core/receivers/receivers.service.spec.js   |  58 ++
senlin_dashboard/test/helpers.py                   |   7 +-
test-requirements.txt                              |  10 +-
tox.ini                                            |   4 +-
196 files changed, 10089 insertions(+), 679 deletions(-)


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

diff --git a/requirements.txt b/requirements.txt
index 0dc4cae..1429a9e 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -5,2 +5,2 @@
-pbr>=1.6 # Apache-2.0
-python-senlinclient>=0.3.0 # Apache-2.0
+pbr>=1.8 # Apache-2.0
+python-senlinclient>=1.1.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 959166f..80bbefb 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -9 +9 @@ http://tarballs.openstack.org/horizon/horizon-master.tar.gz#egg=horizon
-coverage>=3.6 # Apache-2.0
+coverage>=4.0 # Apache-2.0
@@ -13,2 +13,2 @@ mox>=0.5.3 # Apache-2.0
-mox3>=0.7.0 # Apache-2.0
-nodeenv>=0.9.4 # BSD License  # BSD
+mox3!=0.19.0,>=0.7.0 # Apache-2.0
+nodeenv>=0.9.4 # BSD
@@ -23 +23 @@ xvfbwrapper>=0.1.3 #license: MIT
-sphinx!=1.3b1,<1.4,>=1.2.1 # BSD
+sphinx>=1.5.1 # BSD
@@ -25 +25 @@ oslosphinx>=4.7.0 # Apache-2.0
-reno>=1.8.0 # Apache2
+reno>=1.8.0 # Apache-2.0





More information about the Release-announce mailing list