<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
First of all, compiling of statics shouldn't be a required step. No
one does this during development.<br>
For production-ready plugins, the compiled files should already be
included in the GitHub repos and installation of plugin should just
be a matter of downloading it. The API should then take care of
informing the UI what plugins are installed.<br>
The npm install step is mostly one-time.<br>
The grunt build step for the plugin should basically just compile
the staticfiles of the plugin and not the whole project. Besides
with one file this is not extendable -- for N plugins we would build
2^N files with all possible combinations of including the plugins?
:)<br>
<br>
P.<br>
<br>
<div class="moz-cite-prefix">On 12/15/2014 11:35 AM, Anton Zemlyanov
wrote:<br>
</div>
<blockquote
cite="mid:CA+ABCukW51Yd7nBJ1b4FQYMuXB5aOf8dKqF7Kq3Enm5fo1tvcw@mail.gmail.com"
type="cite">
<div dir="ltr">My experience with building Fuel plugins with UI
part is following. To build a ui-less plugin, it takes 3 seconds
and those commands:
<div><br>
</div>
<div>
<div><font face="monospace">git clone <a
moz-do-not-send="true"
href="https://github.com/AlgoTrader/test-plugin.git">https://github.com/AlgoTrader/test-plugin.git</a></font></div>
</div>
<div>
<div><font face="monospace">cd ./test-plugin</font></div>
<div><font face="monospace">fpb --build ./</font></div>
</div>
<div><br>
</div>
<div>When UI added, build start to look like this and takes many
minutes:</div>
<div><br>
</div>
<div>
<div><font face="monospace">git clone <a
moz-do-not-send="true"
href="https://github.com/AlgoTrader/test-plugin.git">https://github.com/AlgoTrader/test-plugin.git</a></font></div>
<div><font face="monospace">git clone <a
moz-do-not-send="true"
href="https://github.com/stackforge/fuel-web.git">https://github.com/stackforge/fuel-web.git</a></font></div>
<div><font face="monospace">cd ./fuel-web</font></div>
<div><font face="monospace">git fetch <a
moz-do-not-send="true"
href="https://review.openstack.org/stackforge/fuel-web">https://review.openstack.org/stackforge/fuel-web</a>
refs/changes/00/112600/24 && git checkout
FETCH_HEAD</font></div>
<div><font face="monospace">cd ..</font></div>
<div><font face="monospace">mkdir -p
./fuel-web/nailgun/static/plugins/test-plugin</font></div>
<div><font face="monospace">cp -R ./test-plugin/ui/*
./fuel-web/nailgun/static/plugins/test-plugin</font></div>
<div><font face="monospace">cd ./fuel-web/nailgun</font></div>
<div><font face="monospace">npm install && npm update</font></div>
<div><font face="monospace">grunt build
--static-dir=static_compressed</font></div>
<div><font face="monospace">cd ../..</font></div>
<div><font face="monospace">rm -rf ./test-plugin/ui</font></div>
<div><font face="monospace">mkdir ./test-plugin/ui</font></div>
<div><font face="monospace">cp -R
./fuel-web/nailgun/static_compressed/plugins/test-plugin/*
./test-plugin/ui</font></div>
<div><font face="monospace">cd ./test-plugin</font></div>
<div><font face="monospace">fpb --build ./</font></div>
</div>
<div><font face="monospace"><br>
</font></div>
<div>I think we need something not so complex and fragile<br>
</div>
<div><br>
</div>
<div>Anton</div>
<div><font face="monospace"><br>
</font></div>
<div><font face="monospace"><br>
</font></div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
OpenStack-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a>
<a class="moz-txt-link-freetext" href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a>
</pre>
</blockquote>
<br>
</body>
</html>