<div dir="ltr">Hi,<div><br></div><div>sorry for late reply. The whole "openstack_dashboard/local/enabled/" mechanism was inspired by the mechanisms used commonly in Debian and other distributions to enable/disable plugins. In short, you shouldn't *copy* the configuration files to the "enabled" directory -- instead you should keep them with the plugin, and only symlink them there when you actually want the plugin to be enabled. There is no need for additional logic in the plugin checking any environment variables and so on.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jul 5, 2016 at 7:57 PM, Fox, Kevin M <span dir="ltr"><<a href="mailto:Kevin.Fox@pnnl.gov" target="_blank">Kevin.Fox@pnnl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">




<div>
<div style="direction:ltr;font-family:Tahoma;color:#000000;font-size:10pt">I wrote the app-catalog-ui plugin. I was going to bring this up but hadn't gotten to it yet. Thanks for bringing it up.<br>
<br>
We do package it up in an rpm, so if its installed with the rest of the packages it should just work. The horizon compress/collect rpm hook does the right thing already. It does cause it to be enabled though, so I was thinking, maybe we make a docker environment
 variable ENABLED_PLUGINS that contains a list of plugins to be enabled?<br>
<br>
The value of ENABLED_PLUGINS could be written into /etc/openstack-dashboard/local-settings.d and the plugins could enable themselves based on it?<br>
<br>
I'd rather have the horizon container be bigger then needed and have all the plugins test/ready to go as needed instead of trying to slide the plugins in myself. Its kind of a pain.<br>
<br>
Thanks,<br>
Kevin<br>
<div style="font-family:Times New Roman;color:#000000;font-size:16px">
<hr>
<div style="direction:ltr"><font face="Tahoma" color="#000000" size="2"><b>From:</b> Dave Walker [<a href="mailto:email@daviey.com" target="_blank">email@daviey.com</a>]<br>
<b>Sent:</b> Sunday, July 03, 2016 1:15 PM<br>
<b>To:</b> OpenStack Development Mailing List<br>
<b>Subject:</b> [openstack-dev] [kolla][horizon] Out of branch horizon plugins?<br>
</font><br>
</div><div><div class="h5">
<div></div>
<div>
<div dir="ltr">Hi,
<div><br>
</div>
<div>Whilst writing a Kolla plugin, I noticed some issues with the way Horizon is configured in Kolla.</div>
<div><br>
</div>
<div>Horizon is increasingly embracing a plugin architecture with UI's and Dashboards being maintained outside of Horizon's tree.</div>
<div><br>
</div>
<div>These can be found with the type:horizon-plugin tag in openstack/governance [0], with 16 projects at current.</div>
<div><br>
</div>
<div>This isn't really addressed in Kolla, and is a little awkward to integrate as the horizon docker image is pure horizon.</div>
<div><br>
</div>
<div>Some projects have a tools/register_plugin.sh which performs the grunt work, where as others require a workflow similar to: </div>
<div><br>
</div>
<div>
<div>cp /path/to/projects/new/panel openstack_dashboard/local/enabled/</div>
<div>cp /path/to/local/defualt/settings openstack_dashboard/local/local_settings.d/</div>
<div>cp /path/to/*policy.json openstack_dashboard/conf/</div>
<div># compress if environment wants it</div>
<div>./manage.py collectstatic</div>
<div>./manage.py compress</div>
</div>
<div><br>
</div>
<div>(Separately, it would be nice if this was standardised.. but not the topic of this thread)</div>
<div><br>
</div>
<div>It would seem logical to pack all of these into the horizon docker image, and add a symlink into dashboard/local/enabled via ansible, policy.json and default settings with some conditionals if enabled_$service... but this will make the horizon docker image
 larger and more complicated.</div>
<div><br>
</div>
<div>What are your thoughts?</div>
<div><br>
</div>
<div>[0] <a href="http://git.openstack.org/cgit/openstack/governance/tree/reference/projects.yaml" target="_blank">
http://git.openstack.org/cgit/openstack/governance/tree/reference/projects.yaml</a><br>
</div>
<div><br>
</div>
<div>--</div>
<div>Kind Regards,</div>
<div>Dave Walker</div>
</div>
</div>
</div></div></div>
</div>
</div>

<br>__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
<br></blockquote></div><br></div>