Horizon is a dashboard for managing OpenStack services powered by Django. It includes key packages like openstack_dashboard, horizon, and openstack_auth. The horizon package defines common components like tables, workflows, and forms. The openstack_dashboard package contains the actual Django project including dashboards and panels. Developers can create new dashboards and panels by using the provided commands and adding the appropriate configuration files.
6. openstack_auth
A Django authentication backend
Form a User object after an identity is verified by
Keystone
Define permission instantly according to the role of a
user
No database
7. horizon
Define a singleton of Horizon
Provide all base components that are used in dashboard
table
workflow
form
tab
11. horizon.base
Core of horizon app
Class of Dashboard and Panel
manage urls for registered dashboards and panels
12. Flow of a View
View Class - Handle request, collect data for component
Component Class - Render
View Class Component
Class
Request Data
Response Render
13. horizon.tables
The most commonly-used component in Horizon
Every element in a table is a class