[openstack-announce] [release][horizon] horizon 9.0.0 release (mitaka)
no-reply at openstack.org
no-reply at openstack.org
Thu Apr 7 07:44:21 UTC 2016
We are amped to announce the release of:
horizon 9.0.0: OpenStack Dashboard
This release is part of the mitaka release series.
For more details, please see below.
9.0.0
^^^^^
Cinder defines storage size in gibibytes (GiB), which is inconsistent
with Horizon panels that show/request storage size in gigabytes (GB).
New Features
************
* Added the Metadata tab to the new Launch Instance workflow to
allow adding key-value metadata to an instance at launch. This
includes any properties from the OS::Nova::Server namespace of the
glance metadata definitions.
* Allows to attach ports during instance launch
<https://blueprints.launchpad.net/horizon/+spec/allow-launching-
ports>
* [blueprint angular-performance-strict-di
(https://blueprints.launchpad.net/horizon/+spec/angular-performance-
strict-di)] This blueprint enforces strict dependency injection in
AngularJS code, for improvements to minification and thus
performance.
* Move OpenStack Dashboard Swift panel rendering logic to client-
side using AngularJS for significant usability improvements.
* Added the Developer dashboard plugin to contrib. This runs when
"DEBUG=True", and adds tooling to the UI to aid in development.
* Added the Bootstrap Theme Preview panel to the Developer
dashboard. This panel contains a list of Bootstrap components with
source code, so that developers can see examples of how to structure
this code and the effects their theme will have upon it.
* Added the Django template cached loader, so templates are stored
in memory. See
https://docs.djangoproject.com/en/1.8/ref/templates/api
/#django.template.loaders.cached.Loader
* [blueprint cinder-consistency-groups
(https://blueprints.launchpad.net/horizon/+spec/cinder-consistency-
groups)] This feature adds a new Consistency Groups tab to the
Project Volumes panel. Consistency Groups (GG) contain existing
volumes, and allow the user to perform actions on the volumes in one
step. Actions include: create a CG, manage volumes associated with
the CG, update a CG, and delete a CGs. Note that a CG can not be
deleted if it contains any volumes.
* Instance metadata can be updated
(https://blueprints.launchpad.net/horizon/+spec/edit-server-
metadata)
* Made the Angular Launch Instance workflow the default in Horizon.
* [blueprint integrate-magic-search
(https://blueprints.launchpad.net/horizon/+spec/integrate-magic-
search)] Magic Search was an external dependency that was being
heavily modified or overwritten in sections, so the used parts of
code base have been moved into Horizon.
* [blueprint integration-tests-hardening
(https://blueprints.launchpad.net/horizon/+spec/integration-tests-
hardening)] This blueprint reduced failures in the integration tests
caused by structure or styling changes, by making them less
dependent on aspects of page structure, such as ordering or CSS
classes.
* Added the Update Encryption action for encrypted volume types.
* [blueprint keystone-federation-protocol-mapping
(https://blueprints.launchpad.net/horizon/+spec/keystone-federation-
protocol-mapping)] This blueprint provides CRUD interaction for
identity provider protocols.
* Allow to override settings from local_settings.py with file
snippets dropped into local_settings.d/ directory.
* [blueprint pagination-for-flavor
(https://blueprints.launchpad.net/horizon/+spec/pagination-for-
flavor)] Added forward and backward pagination to the Flavors panel
* Added support for managing domains and projects when using
Keystone v3. Horizon now maintains a domain scoped token for users
who have a role on a domain, a project scoped token for users who
have a role on a project, or both a domain scoped token and project
scoped token for users who have roles on both.
* Domain management supports the following use cases:
* Cloud Admin - View and manage identity resources across domains
* Domain Admin - View and manage identity resources in the domain
logged in
* User - View identity project in the domain logged in
* Horizon can be configured to run with multiple themes available at
run time. A new selection widget is available through the user
menu. It uses a browser cookie to allow users to toggle between the
configured themes. By default, Horizon is configured with the two
themes available, 'default' and 'material'.
* Allow external plugins to contribute translations to the
Javascript message catalog.
* Selenium tests may now be exercised using the headless PhantomJS
driver.
* Added the angular extensible service which allows angular horizon
elements such as workflows, tables, actions, and forms to be
extended dynamically by adding, removing, or replacing items. The
extensible service is applied to every workflow created using the
horizon workflow service. This includes the angular Launch Instance
workflow.
* All Volume related panels in Horizon that previously used the term
"GB" and "gigabyte" have been replaced with 'GiB' and 'gibibyte'.
* [blueprint keystone-federation-idp
(https://blueprints.launchpad.net/horizon/+spec/keystone-federation-
idp)] Add support for managing keystone identity provider. To enable
the panel, set "OPENSTACK_KEYSTONE_FEDERATION_MANAGEMENT" in the
local_settting.py to True.
* [blueprint keystone-federation-mapping
(https://blueprints.launchpad.net/horizon/+spec/keystone-federation-
mapping)] Add basic support for managing keystone federation
mapping.
* Added the LAUNCH_INSTANCE_DEFAULTS setting which allows specifying
default values for the Launch Instance workflow. Initially only the
Configuration Drive property is supported.
* [blueprint message-of-the-day
(https://blueprints.launchpad.net/horizon/+spec/message-of-the-day)]
Message of the day can now be configured in horizon, this will be
displayed to the user whenever they login. To enable the feature set
"MESSAGES_PATH" in the local_settting.py to the directory where
message files are located. The message file must have a .json file
extension.
* Added policy support to the angular workflow service so each step
in a workflow can specify a policy check that must pass in order for
the step to be displayed.
Known Issues
************
* There are also some Nova related panels (e.g. "Instances") that
reference storage size in "GB". These panels will be addressed in
subsequent patches.
Upgrade Notes
*************
* All AngularJS code must use explicit dependency injection. See
https://docs.angularjs.org/guide/di#using-strict-dependency-
injection
* Custom template tags must have a thread-safe Node implementation
to work with the the cached loader. See
https://docs.djangoproject.com/en/1.8/howto/custom-template-tags
/#template-tag-thread-safety
* Horizon no longer requires Magic Search as an external dependency.
* The Sahara based content has been removed from the Horizon source
tree and is now a separate plugin. To continue managing Sahara in
Horizon, installing the sahara-dashboard plugin on the Horizon
server is required.
* The Trove based content has been removed from the Horizon source
tree and is now a separate plugin. To continue managing Trove in
Horizon, installing the trove-dashboard plugin on the Horizon server
is required.
* The main engine managing integration with oslo.policy has been
moved to django_openstack_auth. The configuration is still managed
in Horizon, but the setting for "POLICY_CHECK_FUNCTION" now uses
"openstack_auth.policy.check" rather than
"openstack_dashboard.policy.check". Current behavior will remain
consistent.
Deprecation Notes
*****************
* The Python Swift panel has been deprecated and no longer displays
by default. To use the old interface edit
"enabled/_1920_project_containers_panel.py" to change "swift_panel"
to "'legacy'".
* The Python Launch Instance workflow has been deprecated and no
longer displays by default.
* The 'default_ipv4_subnet_pool_label' and
'default_ipv6_subnet_pool_label' options has been deprecated and
will be removed in the Newton release. Starting with Mitaka you can
create one default subnet pool per address family through the
Neutron API. These subnet pools will automatically show up in the
subnet pool list using the name of the pool as label.
* The setting CUSTOM_THEME_PATH is now deprecated.
* The setting DEFAULT_THEME_PATH is now deprecated.
* The 'webroot' theme has been removed.
Security Issues
***************
* Policies associated with Consistency Groups exist in the Cinder
policy file, and by default, all actions are disabled.
Bug Fixes
*********
* Provided the ability for plugins to contribute translations to the
JavaScript message catalog. Previously the horizon and
openstack_dahboard applications were hardcoded.
* blueprint gb-to-gib-conversion
<https://blueprints.launchpad.net/horizon/+spec/gb-to-gib-
conversion/>
* Several fixes have been made to the hzTable controller. The list
below outline these changes. See inline documentation for usage
details.
* Properties are now bound to the controller instead of the scope.
* Emit the *hzTable:clearSelected* event to clear table row
selections.
* The property *selections* tracks the checkbox selection state of
each row.
* The property *selected* is now a list of selected rows.
* The property *numSelected* has been removed, use *selected.length*
instead.
* The *select* method has been renamed to to *toggleSelect*.
* The 'webroot' theme was providing an example of how to set the
webroot value through SCSS for accessing needed static URL prefixes
for assets like font paths. This value is now retrieved directly
from the Django settings and is available directly in the SCSS
namespace via $static_url.
Other Notes
***********
* Current limitations on managing identity resources with Keystone
v3:
* Does not support role assignments across domains, such as giving
a user in domain1 access to domain2.
* Does not support project admins managing Keystone projects.
* Does not support hierarchical project management.
Changes in horizon 9.0.0.0rc1..9.0.0
------------------------------------
3f4eeaa Imported Translations from Zanata
10e6bf5 Fixing updating user with no default project
dd4d1fb Imported Translations from Zanata
19b6a65 Fix opening multiple Launch Instance during jQuery table polling
8ad7d1f Imported Translations from Zanata
2694d45 Imported Translations from Zanata
2143bb6 Imported Translations from Zanata
7f1a831 Imported Translations from Zanata
184b67d Imported Translations from Zanata
f1036b4 Imported Translations from Zanata
7c71e21 Imported Translations from Zanata
5d0391f Update .gitreview for stable/mitaka
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 1 +
horizon/locale/en_AU/LC_MESSAGES/django.po | 108 +-
horizon/locale/en_AU/LC_MESSAGES/djangojs.po | 84 +-
horizon/locale/fr/LC_MESSAGES/django.po | 28 +-
horizon/locale/it/LC_MESSAGES/django.po | 110 +-
horizon/locale/it/LC_MESSAGES/djangojs.po | 85 +-
horizon/locale/ja/LC_MESSAGES/djangojs.po | 8 +-
horizon/locale/ko_KR/LC_MESSAGES/django.po | 29 +-
horizon/locale/ko_KR/LC_MESSAGES/djangojs.po | 17 +-
horizon/locale/pt_BR/LC_MESSAGES/django.po | 10 +-
horizon/locale/ru/LC_MESSAGES/django.po | 37 +-
horizon/locale/tr_TR/LC_MESSAGES/django.po | 20 +-
horizon/locale/tr_TR/LC_MESSAGES/djangojs.po | 15 +-
horizon/locale/zh_CN/LC_MESSAGES/django.po | 55 +-
horizon/locale/zh_CN/LC_MESSAGES/djangojs.po | 19 +-
horizon/locale/zh_TW/LC_MESSAGES/django.po | 66 +-
horizon/locale/zh_TW/LC_MESSAGES/djangojs.po | 46 +-
horizon/static/framework/framework.module.js | 12 +-
horizon/static/horizon/js/horizon.tables.js | 4 +-
horizon/static/horizon/js/horizon.tabs.js | 2 +-
.../dashboards/identity/users/forms.py | 8 +-
.../locale/de/LC_MESSAGES/django.po | 219 ++-
.../locale/de/LC_MESSAGES/djangojs.po | 134 +-
openstack_dashboard/locale/django.pot | 397 +++-
openstack_dashboard/locale/djangojs.pot | 224 ++-
.../locale/en_AU/LC_MESSAGES/django.po | 1198 +++++++++++-
.../locale/en_AU/LC_MESSAGES/djangojs.po | 1491 ++++++++++++++-
.../locale/fr/LC_MESSAGES/django.po | 28 +-
.../locale/fr/LC_MESSAGES/djangojs.po | 81 +-
.../locale/it/LC_MESSAGES/django.po | 1245 ++++++++++++-
.../locale/it/LC_MESSAGES/djangojs.po | 1519 ++++++++++++++-
.../locale/ja/LC_MESSAGES/django.po | 268 ++-
.../locale/ja/LC_MESSAGES/djangojs.po | 168 +-
.../locale/ko_KR/LC_MESSAGES/django.po | 504 +++--
.../locale/ko_KR/LC_MESSAGES/djangojs.po | 296 ++-
.../locale/pt_BR/LC_MESSAGES/django.po | 278 ++-
.../locale/pt_BR/LC_MESSAGES/djangojs.po | 289 ++-
.../locale/ru/LC_MESSAGES/django.po | 838 ++++++++-
.../locale/ru/LC_MESSAGES/djangojs.po | 1053 ++++++++++-
.../locale/zh_CN/LC_MESSAGES/django.po | 1959 +++++++++++---------
.../locale/zh_CN/LC_MESSAGES/djangojs.po | 248 ++-
.../locale/zh_TW/LC_MESSAGES/django.po | 1038 ++++++++++-
.../locale/zh_TW/LC_MESSAGES/djangojs.po | 1422 +++++++++++++-
44 files changed, 14134 insertions(+), 1577 deletions(-)
More information about the OpenStack-announce
mailing list