<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi,<div class=""><br class=""></div><div class="">It’s pretty simple and described in <a href="http://mistral.readthedocs.org/en/master/developer/writing_a_plugin_action.html" class="">http://mistral.readthedocs.org/en/master/developer/writing_a_plugin_action.html</a>.</div><div class=""><br class=""><div class="">
<div class="">Renat Akhmerov</div><div class="">@ Mirantis Inc.</div><div class=""><br class=""></div><br class="Apple-interchange-newline">

</div>
<br class=""><div><blockquote type="cite" class=""><div class="">On 09 Feb 2015, at 21:43, Filip Blaha <<a href="mailto:filip.blaha@hp.com" class="">filip.blaha@hp.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class="">Hi all,<br class=""><br class="">regarding to [1] there should be some plugin mechanism for custom actions in Mistral. I went through code and I found some introspection mechanism [2] generating mistral actions from methods on client classes for openstack core projects. E.g. it takes nova client class (python-novaclient) and introspects its methods and theirs parameters and creates corresponding actions with corresponding parameters. The same for other core projects like neutron, cinder, ... However the list of  these client classes seems to be hardcoded [3].  So I am not sure whether this mechanism can be used for other projects like murano client to create murano related actions in mistral? Or is there any other pluggable mechanism to get murano actions into mistral without hardcoding in mistral project?<br class=""><br class="">[1] <a href="https://wiki.openstack.org/wiki/Mistral/Blueprints/ActionsDesign#Plugin_Architecture" class="">https://wiki.openstack.org/wiki/Mistral/Blueprints/ActionsDesign#Plugin_Architecture</a> <br class="">[2] <a href="https://github.com/stackforge/mistral/blob/master/mistral/actions/openstack/action_generator/base.py#L91" class="">https://github.com/stackforge/mistral/blob/master/mistral/actions/openstack/action_generator/base.py#L91</a> <br class="">[3] <a href="https://github.com/stackforge/mistral/blob/master/mistral/actions/generator_factory.py" class="">https://github.com/stackforge/mistral/blob/master/mistral/actions/generator_factory.py</a> <br class=""><br class=""><br class="">Regards<br class="">Filip<br class=""><br class="">__________________________________________________________________________<br class="">OpenStack Development Mailing List (not for usage questions)<br class="">Unsubscribe: <a href="mailto:OpenStack-dev-request@lists.openstack.org" class="">OpenStack-dev-request@lists.openstack.org</a>?subject:unsubscribe<br class=""><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" class="">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br class=""></div></blockquote></div><br class=""></div></body></html>