Folsom Series Release Notes

Release Overview

The Folsom release cycle brought several major advances to Horizon’s userexperience while also reintroducing Quantum networking as a core pieceof the OpenStack Dashboard.

Highlights

Networking (Quantum)

With Quantum being a core project for the Folsom release, we worked closelywith the Quantum team to bring networking support back into Horizon. Thisappears in two primary places: the Networks panel in both the Project andAdmin dashboards, and the Network tab in the Launch Instance workflow. Expectfurther improvements in these areas as Quantum continues to mature and moreusers adopt this model of virtual network management.

User Experience

Workflows

By far the biggest UI/UX change in the Folsom release is the introduction ofprogrammatic workflows. These components allow developers to create conciseinteractions that combine discrete tasks spanning multiple services andresources in a user-friendly way and with minimal boilerplate code. Withina workflow, related objects can also be dynamically created so users don’t losetheir place when they realize the item they wanted isn’t currently available.Look for examples of these workflows in Launch Instance, Associate Floating IP,and Create/Edit Project.

Resource Browser

Another cool new component is an interface designed for “browsing” resourceswhich are nested under a parent resource. The object store (Swift) is a primeexample of this. Now there is a consistent top-level navigation for containerson the left-hand pane of the “browser” while the right-hand pane lets youexplore within those containers and sub-folders.

User Experience Improvements

  • Timezone support is now enabled. You can select your preferred timezonein the User Settings panel.

Community

  • Third-party developers who wish to build on Horizon can get started muchfaster using the new dashboard and panel templates. See the docs oncreating a dashboard andcreating a panel for more information.

  • Athorough set of documentation for developers on how to go aboutinternationalizing, localizing and translating OpenStack projectsis now available.

Under The Hood

  • The python-swiftclient library and python-cinderclient libraries are nowused under the hood instead of cloudfiles and python-novaclient respectively.

  • Internationalization of client-side JavaScript is now possible in additionto server-side Python code.

  • Keystone authentication is now handled by a proper pluggable Djangoauthentication backend, offering significantly better and more reliablesecurity for Horizon.

Other Improvements and Fixes

Some of the general areas of improvement include:

  • Images can now be added to Glance by providing a URL for Glance to downloadthe image data from.

  • Quotas are now displayed dynamically throughout the Project dashboard.

  • API endpoints are now displayed on the OpenStack RC File panel so theycan be organically discovered by an end-user.

  • DataTables now support a summation row at the bottom of the table.

  • Better cross-browser support (Safari and IE particularly).

  • Fewer API calls to OpenStack endpoints (improves performance).

  • Better validation of what actions are permitted when.

  • Improved error handling and error messages.

Known Issues and Limitations

Floating IPs and Quantum

Due to the very late addition of floating IP support in Quantum, Nova’sintegration there is lacking, so floating IP-related API calls to Nova willfail when your OpenStack deployment uses Quantum for networking. This meansthat Horizon actions such as “allocate” and “associate” floating IPs willnot work either since they rely on the underlying APIs.

Pagination

A number of the “index” pages don’t fully work with API pagination yet,causing them to only display the first chunk of results returned by the API.This number is often 1000 (as in the case of novaclient results), but does varysomewhat.

Deleting large numbers of resources simultaneously

Using the “select all” checkbox to delete large numbers of resources via theAPI can cause network timeouts (depending on configuration). This isdue to the APIs not supporting bulk-deletion natively, and consequently Horizonhas to send requests to delete each resource individually behind the scenes.

Backwards Compatibility

The Folsom Horizon release should be fully-compatible with both Folsom andEssex versions of the rest of the OpenStack core projects (Nova, Swift, etc.).While some features work significantly better with an all-Folsom stack dueto bugfixes, etc. in underlying services, there should not be any limitationson what will or will not function. (Note: Quantum was not a core OpenStackproject in Essex, and thus this statement does not apply to network management.)

In terms of APIs provided for extending Horizon, there are a handful ofbackwards-incompatible changes that were made:

  • Thecan_haz andcan_haz_list template filters have been renamedtohas_permissions andhas_permissions_on_list respectively.

  • The dashboard-specificbase.html templates (e.g.nova/base.html,syspanel/base.html, etc.) have been removed in favor of a singlebase.html template.

  • In conjunction with the previous item, the dashboard-specific template blocks(e.g.nova_main,syspanel_main, etc.) have been removed in favor ofa singlemain template block.

Overall, though, great effort has been made to maintain compatibility forthird-party developers who may have built on Horizon so far.