when ngimages is set as default panel, page loops infinitely

Bug #1604110 reported by Michael Xiong
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Dashboard (Horizon)
Expired
Medium
Unassigned

Bug Description

Steps to reproduce the issue:
1. Comment out https://github.com/openstack/horizon/blob/master/openstack_dashboard/enabled/_1020_project_overview_panel.py#L21

# DEFAULT_PANEL = 'overview'

This disables 'overview' as being the default panel of project dashboard.

In https://github.com/openstack/horizon/blob/master/openstack_dashboard/enabled/_1051_project_ng_images_panel.py

2. Set DISABLED = False
3. Add line: DEFAULT_PANEL = 'ngimages'

4. Load the project dashboard.
The ngimages panel will reload itself infinitely. I set a debug point in the images.module.js and saw that the loading of js modules would occur again and again, but the page itself wouldn't load.

Tags: angularjs
Revision history for this message
Matt Borland (palecrow) wrote :

Keep in mind that https://review.openstack.org/#/c/339122/ will change the route associated with the Angular images. If you check out that code and perform the same changes, what is the result?

Changed in horizon:
status: New → Incomplete
importance: Undecided → Medium
Revision history for this message
Matt Borland (palecrow) wrote :

https://review.openstack.org/#/c/339164/ is actually the patch where NG Images is live.

Revision history for this message
Tyr Johanson (tyr-6) wrote :

I think in this case, the DEFAULT_PANEL optimization now serves the angular.html template (which contains an ng-view) when the URL is "/project" instead of "/project/images". Because of that optimization on the server side, the client side never registers a "/project" route and fallsback on the "otherwise" reload registered by app.module.js.

The question is how to gracefully support this with Angular panels so that they don't need to be modified just because the enabled file now makes a panel a default panel for a dashboard?

Revision history for this message
Tyr Johanson (tyr-6) wrote :

Thinking a bit more about this, I think a good long-term fix would be to change Django to redirect "/project" to the full URL "/project/images"

Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for OpenStack Dashboard (Horizon) because there has been no activity for 60 days.]

Changed in horizon:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.