<div dir="ltr">Hi Antonio,<div><br></div><div>First of all, thank you for your contribution. I would like to share with you some comments ragarding this component.</div><div><br></div><div>In OpenNebula 4.2 we included the OneFlow [1] in the distribution. OneFlow allows users and administrators to define, execute and manage multi-tiered applications, or services composed of interconnected Virtual Machines with deployment dependencies between them. Each group of Virtual Machines is deployed and managed as a single entity. Maybe OneFlow can be used in your use case.</div>

<div><br></div><div>Now some comments about the implementation, I really like the way you integrated everything using the sunstone tabs, but I would try not to modify existing files of the OpenNebula distribution. We provide plugins in other parts of the stack to avoid modifying existing files, not only in the sunstone tabs, for example:</div>

<div><br></div><div>* In VirtualClusterJSON.rb you are interacting directly with the OpenNebula DB, but the only component interacting with the DB should be oned. For this, we provide the DOCUMENT resource, this will allow you to use OpenNebula as a DB and use all the OpenNebula permissions system, you just have to define a DOCUMENT_TYPE for your resource. More information</div>

<div>    * <a href="http://opennebula.org/doc/4.2/oca/ruby/OpenNebula/Document.html">http://opennebula.org/doc/4.2/oca/ruby/OpenNebula/Document.html</a><br></div><div>    * <a href="http://opennebula.org/doc/4.2/oca/ruby/OpenNebula/DocumentPool.html">http://opennebula.org/doc/4.2/oca/ruby/OpenNebula/DocumentPool.html</a></div>

<div>and the DocumentJson subclass that uses this class to store JSON objects:</div><div>    * <a href="http://opennebula.org/doc/4.2/oca/ruby/OpenNebula/DocumentJSON.html">http://opennebula.org/doc/4.2/oca/ruby/OpenNebula/DocumentJSON.html</a></div>

<div>    * <a href="http://opennebula.org/doc/4.2/oca/ruby/OpenNebula/DocumentPoolJSON.html">http://opennebula.org/doc/4.2/oca/ruby/OpenNebula/DocumentPoolJSON.html</a></div><div>You can see an example on how to use these classes in the ServiceTemplate and ServiceTemplatePool classes of OneFlow:</div>

<div>    * <a href="https://github.com/OpenNebula/one/blob/master/src/flow/lib/models/service_template.rb">https://github.com/OpenNebula/one/blob/master/src/flow/lib/models/service_template.rb</a></div><div><br></div><div>

* Instead of modifying the SunstoneServer.rb, you can use the Sunstone server plugins to add custom routes to the server:</div><div>    * <a href="http://opennebula.org/documentation:rel4.2:sunstone_server_plugin_guide">http://opennebula.org/documentation:rel4.2:sunstone_server_plugin_guide</a></div>

<div>    * <a href="https://github.com/OpenNebula/one/blob/master/src/sunstone/routes/oneflow.rb">https://github.com/OpenNebula/one/blob/master/src/sunstone/routes/oneflow.rb</a></div><div><br></div><div>* And the last one, instead of modifying the opennebula.js file you can include those calls in your vclusters-tab.js as we did with oneflow-service.js</div>

<div>    * <a href="https://github.com/OpenNebula/one/blob/master/src/sunstone/public/js/plugins/oneflow-templates.js#L19">https://github.com/OpenNebula/one/blob/master/src/sunstone/public/js/plugins/oneflow-templates.js#L19</a></div>

<div><br></div><div>Maybe this information is not clear in the documentation, I just wanted to let you know about these features. This will allow you to integrate this component without modifying any of the existing OpenNebula files.</div>

<div><br></div><div>If you have any doubts please do not hesitate to ask us.</div><div><br></div><div>Cheers</div><div><br></div><div>[1] <a href="http://opennebula.org/documentation:rel4.2:oneapps_overview">http://opennebula.org/documentation:rel4.2:oneapps_overview</a></div>

</div><div class="gmail_extra"><br><br><div class="gmail_quote">On 19 November 2013 17:25, Antonio Attanasio <span dir="ltr"><<a href="mailto:attanasio@ismb.it" target="_blank">attanasio@ismb.it</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    <font face="Times New Roman, Times, serif">Dear all,</font><br>
    <div>
      <div><font face="Times New Roman,
          Times, serif"> we are researchers from Infrastructures and
          Systems for Advanced Computing (IS4AC) unit, a research group
          of Istituto Superiore Mario Boella (ISMB), located in Turin,
          Italy. We developed a new component for Sunstone, which we
          intend to use in our future works and we would like to share
          its functionalities with the community.<br>
          Below you find the compiled submission form, as specified in
          the OpenNebula Ecosystem page.</font><br>
        <ul>
          <li><big><font face="Times New Roman, Times, serif"><span style="font-size:11.5pt" lang="EN-US">Name of the
                  Component: Virtual Cluster<u></u><u></u></span><span style="font-size:10pt"><span><span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;font-size-adjust:none;font-stretch:normal"></span></span></span></font></big></li>


          <li><big><font face="Times New Roman, Times, serif"><span style="font-size:10pt"><span><span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;font-size-adjust:none;font-stretch:normal"> </span></span></span><span style="font-size:11.5pt">URL of the Component: <a href="https://github.com/is4ac-ismb/oneVirtualCluster" target="_blank">https://github.com/is4ac-ismb/oneVirtualCluster</a><u></u><u></u></span><span style="font-size:10pt"><span><span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;font-size-adjust:none;font-stretch:normal"> </span></span></span><span style="font-size:11.5pt"></span></font></big></li>


          <li><big><font face="Times New Roman, Times, serif"><span style="font-size:11.5pt">Brief Description: The
                  Virtual Cluster Plugin for OpenNebula allows users to
                  deploy and manage virtual cluster directly from
                  Sunstone GUI, with easy steps and standard OpenNebula
                  interfaces.<u></u><u></u></span></font></big></li>
          <li><big><font face="Times New Roman, Times, serif"><span style="font-size:11.5pt">Type: Tool<u></u><u></u></span><span style="font-size:10pt"><span><span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;font-size-adjust:none;font-stretch:normal"></span></span></span></font></big></li>


          <li><big><font face="Times New Roman, Times, serif"><span style="font-size:10pt"><span><span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;font-size-adjust:none;font-stretch:normal"> </span></span></span><span style="font-size:11.5pt">License: OSS (Apache v2
                  License)</span><span style="font-size:10pt;color:rgb(31,73,125)"><span><span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;font-size-adjust:none;font-stretch:normal"></span></span></span></font></big></li>


          <li><big><font face="Times New Roman, Times, serif"><span style="font-size:10pt;color:rgb(31,73,125)"><span><span style="font-style:normal;font-variant:normal;font-weight:normal;font-size:7pt;line-height:normal;font-size-adjust:none;font-stretch:normal"> </span></span></span><span style="font-size:11.5pt">OpenNebula Version: 4.0.1
                  and 4.2.0</span><span style="font-size:11.5pt;color:rgb(31,73,125)"><u></u><u></u></span><span style="font-size:11.5pt"></span></font></big></li>
          <li><big><font face="Times New Roman, Times, serif"><span style="font-size:11.5pt">Author: IS4AC @ ISMB</span></font></big><br>
          </li>
          <li><font face="Times New Roman, Times, serif"><span style="font-size:11.5pt"></span><span style="font-size:11.5pt">E-mail: <a href="mailto:is4ac_one@ismb.it" target="_blank">is4ac_one@ismb.it</a></span></font></li>


        </ul>
        <p><br>
          <font face="Times New Roman, Times, serif">We look forward to
            your feedback.<span><br>
            </span>Best regards.<br>
          </font></p>
        <p><font face="Times New Roman, Times, serif">Antonio Attanasio,
            Pietro Ruiu.</font><br>
        </p>
        <table style="text-align:left" height="92" border="0" cellpadding="1" cellspacing="1" width="453">
          <tbody>
            <tr style="font-family:Arial">
              <td style="height:22px" colspan="2" rowspan="1"><font face="Times New Roman, Times, serif">Istituto
                  Superiore Mario Boella</font></td>
            </tr>
            <tr style="font-family:Arial">
              <td style="height:22px" colspan="2" rowspan="1"><font face="Times New Roman, Times, serif">IS4AC -
                  Infrastructure and Systems for Advanced Computing</font></td>
            </tr>
            <tr style="font-family:Arial">
              <td style="height:22px" colspan="2" rowspan="1"><font face="Times New Roman, Times, serif">via P.C. Boggio,
                  61 – 10138 Torino</font></td>
            </tr>
            <tr>
              <td style="height:22px"><font face="Times New Roman,
                  Times, serif">web:</font></td>
              <td style="height:22px"> <font face="Times New Roman,
                  Times, serif"><a href="http://arcas.ismb.it/ita/Come-operiamo/Aree-di-ricerca/ISAST/ISAST" target="_blank">www.ismb.it</a></font></td>
            </tr>
          </tbody>
        </table>
        <br>
      </div>
      <br>
      <br>
    </div>
    <br>
  </div>

<br>_______________________________________________<br>
Dev mailing list<br>
<a href="mailto:Dev@lists.opennebula.org">Dev@lists.opennebula.org</a><br>
<a href="http://lists.opennebula.org/listinfo.cgi/dev-opennebula.org" target="_blank">http://lists.opennebula.org/listinfo.cgi/dev-opennebula.org</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr"><div>--<br></div>Daniel Molina<br>Project Engineer<br>OpenNebula - Flexible Enterprise Cloud Made Simple<br><a href="http://www.OpenNebula.org" target="_blank">www.OpenNebula.org</a> | <a href="mailto:dmolina@opennebula.org" target="_blank">dmolina@opennebula.org</a> | @OpenNebula</div>


</div>