[release-announce] [murano] murano-dashboard 3.1.0 (ocata)

no-reply at openstack.org no-reply at openstack.org
Wed Jan 25 19:13:13 UTC 2017


We are excited to announce the release of:

murano-dashboard 3.1.0: The Murano Dashboard

This release is part of the ocata release series.

Download the package from:

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

For more details, please see below.

3.1.0
^^^^^

Murano Dashboard has been renamed to App Catalog and now allows
seamless integration and single panel structure with App Catalog UI
dashboard.


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

* Flavor field will show the initial value by default.

* Murano dashboard has been renamed to App Catalog, monolithic
  config file has been split into multiple small files. Every such
  file defines either a panel group or adds general murano-related
  settings to horizon.

* New section "Parameters" was added to UI definition markup.
  Parameters is a key-value storage, whose values are available as
  YAQL variables. Thus if the section has a key "var" its value can be
  retrieved using "$var" syntax and used anywhere in the markup - both
  as a field attribute values and in Application/Templates sections.
  Parameter values can be a YAQL expressions. The difference between
  Templates and Parameters is that Parameters are evaluated once
  before form render whereas Templates are evaluated on each access.

* It is possible to specify static action (MuranoPL method) that is
  going to be called before form is rendered. This allows MuranoPL
  class to provide parameter values to the form. Because parameters
  can be used as initial control values this also allows to have
  dynamic content in the form. Parameters source method can be
  specified in "ParametersSource" attribute of UI definition markup:
  "ParametersSource: com.namespace.MyClass.myMethod". If class name is
  not specified dashboard will try to infer it from the "Application"
  section or the package FQN. If specified, static action must be
  present in one of the classes in the same package that was used to
  obtain UI definition file. The method must return a dictionary which
  will be combined with Parameters that are already present in the
  file.

* "ref(templateName [, parameterName] [, idOnly])" YAQL function was
  added to UI definition DSL. This function evaluates template
  "templateName" and fixes the result in parameters under
  "parameterName" key (or "templateName" if the second parameter was
  omitted). Then it generates object ID and places it into "?/id"
  field. On the first use of "parameterName" or if "idOnly" is "false"
  the function will return the whole object structure. On subsequent
  calls or if "idOnly" is "true" it will return the ID that was
  generated upon the first call. Thus the function brings ability to
  reference single object several times.

* "choice" field  type now can accept list of choices in a form of
  dictionary. I.e. in addition to "[[key1, value1], [key2, value2]]"
  one can provide "{key1: value1, key2: value2}"

* UI definition version was bumped to "2.4". If application is going
  to use Parameters it should indicate it by setting the version in UI
  file.


Upgrade Notes
*************

* To upgrade to Newton version of app catalog you need to remove old
  "_50_murano.py" config file, that defined in murano dashboard. Be
  sure to also remove any .pyc and .po files. After that you need to
  copy all new config files from "muranodashboard/local/enabled/*.py"
  to "openstack_dashboard/local/enabled/" and restart horizon


Bug Fixes
*********

* The issue with adding already deployed components to environment
  via dropdown is fixed with applying changes for the new type format.

* VM IP addresses are now properly displayed in the environment
  topology viewer.

* Topology viewer now properly displays icons of the deployed
  applications.


Other Notes
***********

* Murano Dashboard relies on Glance v1 API for image uploads. In
  case it is not available an error will be shown and all the image-
  related functionality will be unavailable.

Changes in murano-dashboard 3.0.0.0rc1..3.1.0
---------------------------------------------

6b00791 Imported Translations from Zanata
ab817ce Imported Translations from Zanata
5daf0b5 Imported Translations from Zanata
1d3d8a0 Imported Translations from Zanata
514ee6c Imported Translations from Zanata
ec3d246 Add UI Tests for Various Package Scenarios.
4eeb1fe Change Murano Dashboard Limit for Memory and Instances
29bb451 Imported Translations from Zanata
fc34a1a Fixes new sanity_check tests deleting too many resources.
3ba5bfd Let flavor fields show the default value
b5487f2 Imported Translations from Zanata
a17ed79 Remove useless iso8601 requirements
e6e9267 Add UI tests for Deploy/Abandon Environment from Table View.
5a76697 Add assertions to functional test test_download_package.
ff90615 Remove the py26 support in tests/functional/base
24ee71f Add UI Tests for Deleting Multiple Images.
e507341 Add UI Tests for Filtering Packages by Name/Type/Keyword.
5d189b9 Imported Translations from Zanata
d72f997 Add UI Tests for Filtering Components by Name/Tag/Description.
db10c56 Imported Translations from Zanata
93eada6 Imported Translations from Zanata
bcf1b2b Treat empty body as no body in parse_api_error
6792ab4 Add UI Tests for Latest Deployment Log.
6989af8 Fixes test_filter_by_description failing on glare gate job.
fc8dbb0 Fixes murano-dashboard-coverage failing unit test.
0e855a5 Murano-Dashboard Wrong instance name on Component details tab.
8b943f4 Imported Translations from Zanata
11ba34e Fixes unit tests throwing errors, related to Horizon function.
5270169 Increase unit test coverage for muranodashboard Common Utils.
87cf0e7 Fix passing session id to Update Metadata link in Env and Comps tables
fb263eb Add UI Tests for Filtering Apps by Tag/Description.
54fdc9c Imported Translations from Zanata
e34493d Use assertGreater(len(x), y) instead of assertTrue(len(x) > y)
3ff0950 Correct murano-dashboard reraising of exception
a1e3275 Add UI Test for Abandon Environment from Detail View.
afefbbd Fixes AttributError thrown by utils.CustomUnpickler.
5460bea Imported Translations from Zanata
aaac5ad Add UI tests for Delete Environment from Details View.
1168ea7 Increase unit test coverage for muranodashboard Yaql Functions.
bfcc6e5 Fix typos
260ecbe Updated from global requirements
43d4a29 Imported Translations from Zanata
66b4f53 Increase unit test coverage for muranodashboard Images Views.
2f670a2 Increase unit test coverage for muranodashboard Categories Views.
62a23b0 Changed author
d022cf2 Fix the wrong DJANGO_SETTINGS_MODULE in tox.ini
3a1790f Topology viewer now properly parses composite type names
d3039ea Fixed output of lists in topology viewer
8e2e106 Imported Translations from Zanata
3e96d68 Show team and repo badges on README
f64b0a3 Imported Translations from Zanata
d6fd44d Horizon navbar structure was changed recently, adapt to it
7aa3c62 Use assertGreater(len(x), 0) instead of assertTrue(len(x) > 0)
29608e1 Remove extra space from message box in Catalog Index View.
40ebeaf Increase unit test coverage for muranodashboard Dynamic UI Forms.
3e67c43 Increase timeout in UI test
6ebe2b6 Replace 'assertEqual(None, ...)' with 'assertIsNone(...)'
4a79140 Imported Translations from Zanata
07ec759 Increase unit test coverage for muranodashboard Common Net.
abbae53 Increase unit test coverage for muranodashboard Environment API.
5a1a388 Make murano-dashboard using horizon's DATABASE when horizon configured
8c6dd38 Sort values in standard dropdowns
6faf4f3 Increase unit test coverage for muranodashboard Packages Tables and Packages API.
a69509d Increase unit test coverage for muranodashboard Catalog Views.
df1aaf5 Imported Translations from Zanata
79ddf80 Increase unit test coverage for muranodashboard Env Tabs.
5afffa1 Fixes TypeError/other bugs in Environment OverviewTab find_stack.
8df4320 Increase unit test coverage for muranodashboard Env Views.
29e6fc4 Fixes REST API tests for M requirements compatibility
f55cd6e Fixes UnboundLocalError thrown by get_context_data in Env Views.
542b0c1 Fix murano-dashboard plugin files in README
1b39482 Add docs action for tox.ini
201eb75 Ability to reference single object several times
cddd563 Static action for UI definition parameters
a4bcaa1 Add Parameters section to UI definition
392a9f9 Imported Translations from Zanata
d01884e Imported Translations from Zanata
0980494 Updated from global requirements
a386cf3 Imported Translations from Zanata
77c7010 Bundle import test was fixed
58788f4 Fix python3.4 compatibility issue in yaql_expression.py
91bccf4 Increases unit test coverage for muranodashboard Env Rest Api.
46b41fd Increase unit test coverage for Packages Views API.
6ae4ab5 Fixes TypeError thrown by raise statement in Packages Views.
3123a16 Updated from global requirements
8bb4784 Increase unit test coverage for muranodashboard Dynamic UI Fields.
0ccecaa Imported Translations from Zanata
4bc89b5 Fixes RuntimeError thrown by finalize_properties in Dynamic UI Fields.
f1dadb6 Increase unit test coverage for muranodashboard Environment Tables.
2e0e7a5 Increase unit test coverage for catalog and images
8700300 Increase unit test coverage for environments, helpers, and yaql expression
a9ae8f2 Imported Translations from Zanata
4dbf729 Fixes TypeError thrown by UpdateServiceRow.update_cell.
cdc0ce4 Fix tests for package/bundle import
e0175a8 Updated from global requirements
ad6c1ea [Trivial] Fix a typo in murano-dashboard
d90a2c7 Fixes DetailView.get_data throws UnboundLocalError.
71b762e Increase unit test coverage for muranodashboard Topology API.
44accfd Updated from global requirements
baf8f0b Increase unit test coverage for muranodashboard Packages Forms API
1561ea5 Fix Syntax Error being thrown by handle in ModifyPackageForm.
9fbce11 Imported Translations from Zanata
7958e8a Increase unit test coverage for muranodashboard Services API.
4f3d74f Increase unit test coverage for muranodashboard base API.
63ed27e Imported Translations from Zanata
a2b14bb Increase unit test coverage for muranodashboard Packages API.
91b8e8b Imported Translations from Zanata
b2b6907 Remove xrange for run both Python 2 and Python 3
14ab815 Fix murano dashboard to work with older Horizon versions
1144b3a Apply new type format if used
7378be6 Split muranodashboard config into multiple files
6d40d87 Ability to assign metadata to Murano Applications and Environments
4728d45 Add JS unit tests runner and commands to dashboard
8331eb3 Enable release notes translation
667e17b Do not use category count in UI tests with GLARE backend
2114c26 'Forms:' section is now truly optional in ui definition
5293256 Util for Selenium that waits for page change
34525c0 In Murano App configuration wizard move Back/Next w/o losing any data
a6ad471 Updated from global requirements
cef39fc Updated from global requirements
7351bb9 Add Apache 2.0 license to source file
d3bf3b8 Increase unit test coverage for environment tables.
d50cb35 Fix js validation of the password in dynamic UI
e2a0cd5 Updated from global requirements
c25d6bf Display package name as type of service in env
e52556d Fix test_apps_pagination test failed
2c9ac7a Remove unnecessary muranodashboard/models.py file
2590581 Renamed the URL suffix of dashboard's ajax API
0f1929f Remove unnecessary setUp
a9dfbc4 Murano-dashboard now shows warnings if glance v1 is unavailable
4670c62 Replace the 'quantum' in test settings
1d5b35c Fixing typo error ceveral
6533a6e Updated from global requirements
a4b82ae Replace 'MagicMock' with 'Mock'
ed344e5 Update murano-dashboard eslint devDependencies
1140235 Imported Translations from Zanata
b646612 Let murano dashboard using glance v1
223eb70 Add test_add_pkg_to_category_without_count test
3053944 Update reno for stable/newton
266accb Add ability to mark image with custom type
3b04e20 Add ability to delete arbitrary component in functional tests
67223ea Rename 'murano' dashboard to 'app-catalog'
b2208b9 Fix manage.py wrong muranodashboard setting module


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

.eslintrc                                          |   19 +
README.rst                                         |   15 +-
karma.conf.js                                      |  140 +++
manage.py                                          |   15 +-
muranodashboard/api/packages.py                    |   21 +-
muranodashboard/api/rest/__init__.py               |    1 +
muranodashboard/api/rest/environments.py           |  158 +++
muranodashboard/api/rest/packages.py               |   10 +-
muranodashboard/catalog/panel.py                   |    7 +-
muranodashboard/catalog/views.py                   |   20 +-
muranodashboard/categories/panel.py                |    5 -
muranodashboard/categories/tables.py               |    4 +-
muranodashboard/categories/views.py                |    4 +-
muranodashboard/common/utils.py                    |    4 +-
muranodashboard/dashboard.py                       |   28 +-
muranodashboard/dynamic_ui/fields.py               |   75 +-
muranodashboard/dynamic_ui/forms.py                |   16 +-
muranodashboard/dynamic_ui/helpers.py              |   10 +-
muranodashboard/dynamic_ui/services.py             |   69 +-
muranodashboard/dynamic_ui/version.py              |    2 +-
muranodashboard/dynamic_ui/yaql_expression.py      |    8 +-
muranodashboard/dynamic_ui/yaql_functions.py       |   34 +-
muranodashboard/environments/api.py                |   60 +-
muranodashboard/environments/panel.py              |    5 -
muranodashboard/environments/tables.py             |  111 +-
muranodashboard/environments/tabs.py               |   16 +-
muranodashboard/environments/topology.py           |   22 +-
muranodashboard/environments/views.py              |   32 +-
muranodashboard/images/forms.py                    |   33 +-
muranodashboard/images/panel.py                    |    5 -
muranodashboard/images/tables.py                   |   11 +-
muranodashboard/images/views.py                    |   60 +-
.../local/enabled/_50_dashboard_catalog.py         |    5 +
muranodashboard/local/enabled/_50_murano.py        |   24 -
.../local/enabled/_51_muranodashboard.py           |   37 +
.../local/enabled/_60_panel_group_browse.py        |    8 +
.../local/enabled/_63_panel_murano_catalog.py      |    9 +
.../local/enabled/_70_panel_group_manage.py        |    8 +
.../local/enabled/_71_panel_murano_packages.py     |    9 +
.../local/enabled/_72_panel_murano_images.py       |    9 +
.../local/enabled/_73_panel_murano_categories.py   |    9 +
.../local/enabled/_80_panel_group_applications.py  |    8 +
.../enabled/_81_panel_applications_environments.py |    9 +
.../local/local_settings.d/_50_murano.py           |   31 +-
muranodashboard/locale/cs/LC_MESSAGES/django.po    |  142 ++-
muranodashboard/locale/cs/LC_MESSAGES/djangojs.po  |   55 +-
muranodashboard/locale/de/LC_MESSAGES/django.po    | 1168 +++++++++++++++++
muranodashboard/locale/de/LC_MESSAGES/djangojs.po  |   66 +-
.../locale/en_GB/LC_MESSAGES/djangojs.po           |   39 -
muranodashboard/locale/fr/LC_MESSAGES/django.po    |  848 +++++++++++++
muranodashboard/locale/fr/LC_MESSAGES/djangojs.po  |   40 -
muranodashboard/locale/id/LC_MESSAGES/django.po    | 1142 +++++++++++++++++
muranodashboard/locale/id/LC_MESSAGES/djangojs.po  |   84 ++
muranodashboard/locale/ja/LC_MESSAGES/django.po    |   75 +-
muranodashboard/locale/ko_KR/LC_MESSAGES/django.po |   75 +-
.../locale/ko_KR/LC_MESSAGES/djangojs.po           |   21 +-
muranodashboard/locale/pt_BR/LC_MESSAGES/django.po |   13 +-
.../locale/pt_BR/LC_MESSAGES/djangojs.po           |   33 -
muranodashboard/locale/ru/LC_MESSAGES/django.po    |  160 ++-
muranodashboard/locale/ru/LC_MESSAGES/djangojs.po  |   61 +-
muranodashboard/locale/zh_CN/LC_MESSAGES/django.po |   24 +-
muranodashboard/models.py                          |    3 -
muranodashboard/packages/forms.py                  |   12 +-
muranodashboard/packages/panel.py                  |    5 -
muranodashboard/packages/tables.py                 |   22 +-
muranodashboard/packages/views.py                  |  172 +--
.../app/core/metadata/metadata.service.spec.js     |  163 +++
muranodashboard/static/app/murano/murano.module.js |  100 ++
.../static/app/murano/murano.module.spec.js        |  113 ++
.../static/app/murano/murano.service.js            |  203 +++
.../static/app/murano/murano.service.spec.js       |  108 ++
.../static/muranodashboard/js/add-select.js        |   16 +-
.../muranodashboard/js/draggable-components.js     |    8 +-
.../muranodashboard/js/environments-in-place.js    |    4 +-
.../static/muranodashboard/js/external-ad.js       |    8 +-
.../muranodashboard/js/horizon.muranotopology.js   |   64 +-
.../static/muranodashboard/js/mixed-mode.js        |    6 +-
.../static/muranodashboard/js/murano.service.js    |   74 --
.../static/muranodashboard/js/murano.tables.js     |    2 +-
.../static/muranodashboard/js/passwordfield.js     |    5 +-
muranodashboard/templates/catalog/_overview.html   |    2 +-
muranodashboard/templates/catalog/add_app.html     |    4 +-
muranodashboard/templates/catalog/app_details.html |   10 +-
muranodashboard/templates/catalog/app_tile.html    |    6 +-
muranodashboard/templates/catalog/categories.html  |    6 +-
.../templates/catalog/env_switcher.html            |    4 +-
muranodashboard/templates/catalog/index.html       |   17 +-
.../templates/catalog/quick_deploy.html            |    2 +-
.../templates/common/_detail_header.html           |   20 +
muranodashboard/templates/deployments/reports.html |    2 +-
.../templates/environments/_data_table.html        |    2 +-
muranodashboard/templates/images/_mark.html        |    6 +-
muranodashboard/templates/murano_base.html         |    1 -
.../templates/packages/_import_bundle.html         |    4 +-
.../templates/packages/_modify_package.html        |    4 +-
muranodashboard/templates/packages/_upload.html    |    4 +-
muranodashboard/templates/packages/detail.html     |    2 +-
.../templates/services/_wizard_create.html         |   84 +-
.../templates/services/app_tile_small.html         |    4 +-
muranodashboard/templates/services/details.html    |    2 +-
muranodashboard/templates/services/index.html      |    6 +-
muranodashboard/views.py                           |    2 +-
package.json                                       |   15 +-
.../notes/bug-1650406-4e4a3bdcfcc5718a.yaml        |    4 +
.../dashboard-rename-split-650ba2f7d4f846c2.yaml   |   16 +
.../notes/fix_type_format-798a646071b1104b.yaml    |    4 +
.../notes/glance-v2-wanring-b7ef3e3ce0ce6ce1.yaml  |    5 +
.../ips-display-topology-5a45876dafc637eb.yaml     |    4 +
.../safeloader-cve-2016-4972-82523879a6c3b1a5.yaml |    2 +-
.../notes/topology-icon-fix-6572c069d127ed95.yaml  |    4 +
.../ui-definition-parameters-c9d2cb3a7da7459b.yaml |   45 +
releasenotes/source/conf.py                        |    3 +
releasenotes/source/index.rst                      |    1 +
.../source/locale/de/LC_MESSAGES/releasenotes.po   |  444 +++++++
.../locale/en_GB/LC_MESSAGES/releasenotes.po       |   52 +-
.../source/locale/id/LC_MESSAGES/releasenotes.po   |  439 +++++++
.../source/locale/ja/LC_MESSAGES/releasenotes.po   |  130 --
.../locale/ko_KR/LC_MESSAGES/releasenotes.po       |  104 +-
.../locale/zh_CN/LC_MESSAGES/releasenotes.po       |   40 +-
releasenotes/source/newton.rst                     |    6 +
requirements.txt                                   |    7 +-
setup.cfg                                          |    2 +-
test-requirements.txt                              |   12 +-
tools/cover.sh                                     |   12 +-
tools/post_install.sh                              |   13 +
tox.ini                                            |    7 +-
163 files changed, 15978 insertions(+), 1222 deletions(-)


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

diff --git a/requirements.txt b/requirements.txt
index 1e0c9ef..0aebb6e 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -4 +4 @@
-pbr>=1.6 # Apache-2.0
+pbr>=1.8 # Apache-2.0
@@ -9 +8,0 @@ django-formtools # BSD
-iso8601>=0.1.11 # MIT
@@ -12 +11 @@ python-muranoclient>=0.8.2 # Apache-2.0
-PyYAML>=3.1.0 # MIT
+PyYAML>=3.10.0 # MIT
@@ -15 +14 @@ yaql>=1.1.0 # Apache 2.0 License
-oslo.log>=1.14.0 # Apache-2.0
+oslo.log>=3.11.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 4e29a80..c3f4ad4 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -6 +6 @@ hacking<0.11,>=0.10.0
-coverage>=3.6 # Apache-2.0
+coverage>=4.0 # Apache-2.0
@@ -9 +9 @@ nose # LGPL
-oslo.config>=3.14.0 # Apache-2.0
+oslo.config!=3.18.0,>=3.14.0 # Apache-2.0
@@ -19,3 +19,3 @@ mox3>=0.7.0 # Apache-2.0
-oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0
-sphinx!=1.3b1,<1.3,>=1.2.1 # BSD
-reno>=1.8.0 # Apache2
+oslosphinx>=4.7.0 # Apache-2.0
+sphinx!=1.3b1,<1.4,>=1.2.1 # BSD
+reno>=1.8.0 # Apache-2.0
@@ -28 +28 @@ django-openstack-auth>=2.4.0 # Apache-2.0
-nodeenv>=0.9.4 # BSD License  # BSD
+nodeenv>=0.9.4 # BSD





More information about the Release-announce mailing list