** Changed in: horizon
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Dashboard (Horizon).
https://bugs.launchpad.net/bugs/1458697
Title:
Horizon/Dashboard source reorganisation
Status in OpenStack Dashboard (Horizon):
Fix Released
Bug description:
The intent with Horizon has always been that the "horizon" component
be a library/framework of components for dashboards to be built out
of, and the "openstack_dashboard" component be an implementation of
that.
For the purposes of succintness, "framework" in the below will refer
to the folder horizon/horizon and "dashboard" will refer to
"horizon/openstack_dashboard". Perhaps one day those could be renamed
also...
Some reorganisation work has been done in bug
https://bugs.launchpad.net/horizon/+bug/1454880 but it has focused on
cleaning up the angularjs usage in our codebase.
During that work, several points were identified as blurring the line
between framework and dashboard in the codebase, and this bug captures
those. NOTE that this bug refers to the codebase *once that
refactoring has been done* and leaf patch
https://review.openstack.org/#/c/184597/ has been merged. Patches
relating to this bug will all depend on that patch until it is merged.
Changes needing to be made:
1) the framework should not define the top-level angular app, and thus
horizon/static/dashboard-app should go away, with parts moving to the dashboard
and framework as appropriate.
2) the framework should also not define the top-level HTML (base.html) - this
should be in the dashboard.
Actual steps to perform:
1) horizon/static/dashboard-app/utils should be moved to a new location in
the framework. There's a large amount of tech debt in this folder which should
be addressed in subsequent bugs and these files removed.
2) horizon/static/dashboard-app/login is a generic login/auth helper
component should be moved to the framework.
3) horizon/static/dashboard-app/controllers has several controllers only used
in the dashboard so should be moved there. The single controller "dummy.js"
should remain in the framework.
4) horizon/static/dashboard-app/dashboard-app.module.js is the top-level
angular app and should move to the dashboard.
5) horizon/templates/base.html should move to dashboard and its dependencies
horizon/templates/horizon/_conf.html and
horizon/templates/horizon/_scripts.html should move with it. There remains a
need for a horizon/templates/horizon/_scripts.html in the framework for testing
purposes, so a new file for that purpose will be placed in the testing area of
the framework.
On the utils tech debt: the contents of that folder are only used in
one place; the functions defined there should be moved to the modules
they're used in. Those target modules are legacy code which will be
replaced over time by angularjs implementations, so I believe it is
reasonable to do this.
To manage notifications about this bug go to:
https://bugs.launchpad.net/horizon/+bug/1458697/+subscriptions
--
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to : [email protected]
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help : https://help.launchpad.net/ListHelp