Description of problem:
When installing Manila and Horizon, the Manila Horizon UI Plugin seems to not load correctly. There is supposed to be a section for managing Manila resources but it does not load.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Deploy OSP-13 with Infrared ensuring that the configuration of Manila is enabled.
2. Log into the Horizon UI and log in with any user.
3. Observe that there is no Share tab available in the UI.
There is no share tab available for any user in the Horizon UI.
The Manila UI plugin shall be available as a tab within the Horizon UI.
This issue seems to effect every UI plugin, such as the Neutron LBaas and the Sahara plugins. It's possible that there is either a plugin that is failing to load, causing all others to fail, or something within the plugin framework itself.
Anecdotally, I checked out a Packstack all-in-one deployment without containers setup with Manila and Sahara and both the Manila and Sahara UI plugins were present in the UI. Also of note the LBaaS plugin was not present in this deployment.
The problem appears to be missing files in the Horizon container/image on the controller. There are broken sym links in /etc/openstack-dashboard/enabled/ that point to /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/, which don't have any _80_manila* and _90??_manila* files.
The manila-ui plugin can be loaded as a work-around by:
1) Copy the files from the controller to the horizon docker overlay directory,
2) restart the horizon container,
3) ssh/forward to the server and load horizon
Help commands for work-around above:
On the controller:
docker inspect horizon | grep overlay
In the container overlay directory that didn’t have the correct files
cp /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_80* .
cp /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_90* .
docker restart horizon
We need to get the horizon images updated with the missing files.
openstack-manila-ui-2.13.0-3.el7ost is most recent build
Victoria Martinez de la Cruz <email@example.com> did last tweak to the package to resolve issue where it would not install standalone
From Radek Dopieralski, "the files are not missing. They are intentionally deleted by Kolla to disable the plugin by this script: https://github.com/openstack/kolla/tree/master/docker/horizon — and they are only put back if the plugin has been enabled in the heat templates — in our case, in this file: https://github.com/openstack/tripleo-heat-templates/blob/master/docker/services/horizon.yaml#L152"
When looking at the undercloud horizon.yaml file for this deployment, though, we see that it is enabled.
[stack@undercloud-0 services]$ cat horizon.yaml | grep ENABLE_MANILA
[stack@undercloud-0 services]$ pwd
Kolla always deletes all the enabled files, and then, if a plugin is enabled in the configuration, puts them back.
Looking at the code that is supposed to put those files back:
It looks for them in /usr/lib/python2.7/site-packages/manila_ui/local/enabled/ — that's where the files are in the repository, but they are missing from our RPM package, probably because they have been moved to /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/
One possible solution is to copy those files instead of moving them when creating the RPM, so that they are included in the RPM where Kolla expects them.
Another way would be to add a line similar to https://github.com/openstack/kolla/blob/master/docker/horizon/Dockerfile.j2#L44 that works around this problem for the Sahara plugin.
*** This bug has been marked as a duplicate of bug 1554935 ***