Configurable setting to allow operators to require admin users provide search criteria first, before loading any data
Summary
=======
Have a configurable setting to allow operators to require admin users to provide search criteria first before loading any data.
Motivation
========
Currently if there is a large amount of resources in the environment, the admin views take too much time to load. Making a series of API calls to populate the table with the first 20 of say 1000 items is wasteful and has a low likelihood of success.
Horizon needs to have a configurable feature that allows requiring admin users to provide a set of filters before loading the data in the views, so that the user only gets what he/she needs.
Description
=========
- There will be a configurable setting that can be set in the local_settings.py file:
FILTER_
'
'
'
'
}
- The default value of the dict attributes will be False
- A set of new filter inputs will be displayed in the admin views (Investigate APIs server side filtering first)
- If the FILTER_DATA_FIRST key,value is True; then the admin views will display an empty table and a message notifying the user that a search criteria must be applied first
- The change will target Instances, Volumes, Images, Networks and Routers admin views
- At least one filter must be selected before submitting the search criteria
UX
===
Change targeted views behavior to display an empty table and a message to inform the user about specifying a search criteria first
if the configuration variable is set to True
Wireframes, Mocks, Videos and UI Markup
-------
If the FILTER_DATA_FIRST key-value is set to True the targeted view will show an empty table but with an embedded text message saying "Please specify a search criteria first."
A search criteria filtering input(s) will be available to the user as part of the standard table filtering.
Outside Dependencies
==================
collect information about API server side filtering for Instances, Volumes, Images and Networks
and implement available filters
Doc Impact
=========
- Changes to settings file will be required to add the new configuration value. Need to document this new variable
- The data loading behavior of admin views will change when the new configuration value is set to True. Need to document this behavior.
- Release Note item also needs to be added.
Blueprint information
- Status:
- Complete
- Approver:
- David Lyle
- Priority:
- High
- Drafter:
- Daniel Castellanos
- Direction:
- Approved
- Assignee:
- Daniel Castellanos
- Definition:
- Approved
- Series goal:
- Accepted for 10.0.0-newton
- Implementation:
- Implemented
- Milestone target:
- ocata-1
- Started by
- Daniel Castellanos
- Completed by
- Daniel Castellanos
Related branches
Related bugs
Sprints
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
[WIP] Implement ADMIN_FILTER_
Addressed by: https:/
Server-side filtering networks
Addressed by: https:/
Implements admin_filter_first in networks
Addressed by: https:/
Server-side filtering routers
Addressed by: https:/
Implements admin_filter_first in routers
Gerrit topic: https:/
Addressed by: https:/
Implement admin_filter_first setting in Admin>Volumes
Addressed by: https:/
Implement admin_filter setting in Project>vpn
Addressed by: https:/
Update admin filter first setting to a dict
Gerrit topic: https:/
Addressed by: https:/
Add server filters to NGusers & enable filter first
Gerrit topic: https:/
Addressed by: https:/
Implement "FILTER_DATA_FIRST" in angular views