Angularize Identity Projects Panel
Angularize Identity Projects Panel
Summary
=======
Move OpenStack Dashboard Identity Projects panel rendering logic to client-side, using
AngularJS.
Motivation
========
OpenStack Kilo release introduced new reusable AngularJS widgets in Horizon, such as
a new table implementation with expandable content and filtering. These features
reflect an ongoing community effort on moving most rendering logic in different parts of Horizon from
server-side Django code to client-side, with AngularJS[
In order to comply with the features and changes described above, it is proposed to reimplement
Dashboard Identity Projects panel using AngularJS. Changes described here may be considered a step forward in relation to the work proposed in [6].
Description
=========
The following features will be added to Horizon:
a) Angularized projects table
The projects table will be reimplemented using the available AngularJS widgets.
User shall take advantage of expandable detail rows, content filtering and priority
columns on window resize.
b) Angularized projects actions
Modal forms and actions to create and edit a project, as well as batch project actions such as
deletion will be handled in the client-side using AngularJS services and controllers.
c) Services in Horizon REST API
The Identity Projects panel needs to make API requests to different OpenStack components
in order to perform its workflows. Some of theses services are not fully implemented
in Horizon's Python and AngularJS REST APIs yet.
UX
==
Wireframes, Mocks, Videos and UI Markup
-------
In a first attempt, the UI will look and work the same as it currently does. However, future versions
will likely use a design compatible with what's being made with the new redesigned launch instance form[3]. Some ideias seem to be already sketched[7].
Testing
======
Reviewers will be able to pull the patch from Gerritt. Any specific information needed to test the changes will be provided in the commit message.
Outside Dependencies
==================
Necessary API services are already implemented. Nonetheless, new code to the REST APIs in Python[8] and AngularJS[9] shall probably be added for all of the workflows to work properly.
Below are all the existing APIs that are base functionality which will be used.
api.keystone.
api.keystone.
api.keystone.
api.keystone.
api.keystone.
api.keystone.
api.base.
api.neutron.
api.neutron.
api.keystone.
api.keystone.
api.keystone.
api.keystone.
api.keystone.
api.keystone.
api.keystone.
Requirements Update Required
=======
N/A
Doc Impact
==========
Horizon documentation will be updated in order to expose to the user the new features that will be introduced. This could include:
* settings file changes that will be required
* changes to default behaviors
* any deprecation or obsolescence notices
References
==========
[1] https:/
[2] https:/
[3] https:/
[4] https:/
[5] https:/
[6] https:/
[7] https:/
[8] https:/
[9] https:/
Blueprint information
- Status:
- Complete
- Approver:
- David Lyle
- Priority:
- Low
- Drafter:
- Paulo Ewerton
- Direction:
- Approved
- Assignee:
- Paulo Ewerton
- Definition:
- Obsolete
- Series goal:
- Accepted for 11.0.0-ocata
- Implementation:
- Started
- Milestone target:
- None
- Started by
- Paulo Ewerton
- Completed by
- Rob Cresswell
Related branches
Related bugs
Sprints
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
Angularize Identity Projects Panel
Addressed by: https:/
Adding Identity NGProjects Panel
Addressed by: https:/
Adding Identity Projects Table
Addressed by: https:/
REST API to support angular quota workflows
Addressed by: https:/
Identity Projects Angular Quota API
Addressed by: https:/
Quota Functions in Angular API
[2015-08-19 | david-lyle] There is good progress here, but we're still working on a reusable pattern. And the functionality needs to be complete before merging. So pushing to Mitaka.
Addressed by: https:/
Adding Identity NGProjects Create Action - Details
Addressed by: https:/
Adding NGProjects Create Actions - Members
Addressed by: https:/
Adding NGProjects Create Action - Quota
[robcresswell 2017-02-21]
Moving to wishlist https:/