| <?php |
| /******************************************************************************* |
| * Copyright (c) 2014 Eclipse Foundation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * Christopher Guindon (Eclipse Foundation) - Initial implementation |
| *******************************************************************************/ |
| ?> |
| |
| <!-- Main content area --> |
| <div id="midcolumn"> |
| |
| <h1 id="jemo-admin"><a class="anchor" href="#jemo-admin"></a>1. Jemo Administration</h1> |
| <p>Jemo offers a set of functionalities only to users with admin permissions at |
| <a href="http://localhost/jemo/admin" target="_blank">http://localhost/jemo/admin</a> |
| (change 'localhost' if you don't run Jemo locally.) The user is prompted to provide credentials and, if authorised, |
| he is provided with two options, the <code>Admin Panel</code> or the <code>CI/CD</code> option. |
| </p> |
| |
| <h2>Admin Panel</h2> |
| <p> |
| The admin panel displays the full list of plugins that are currently installed on the Jemo cluster. |
| Notice, that you can install more than one versions of the same plugin at the same time. The jemo cluster will run both of them. |
| This panel gives the administrator full visibility and control on what plugin versions run at each time. |
| </p> |
| |
| <p> |
| For each plugin version, the <code>id</code>, the <code>name</code> and the <code>version</code> are displayed |
| in a row and if you expand the arrow at the right side |
| the list of modules comprising the plugin is displayed. Two buttons are provided for each plugin version, |
| one that switches between <code>DEACTIVATE</code>/<code>ACTIVATE</code> when the plugin is active/inactive respectively and |
| another labeled with <code>DELETE</code> that deletes the plugin. |
| Deactivating a plugin means that the plugin stops running on the Jemo cluster, but the relevant files, i.e. the jar, |
| remain stored on the cloud provider storage for future use in case this plugin version is re-activated. |
| On the other hand, deleting a plugin version deletes all the relevant files from the cloud provider storage. |
| </p> |
| |
| <h2>CI/CD</h2> |
| The CI/CD functionality offers the Jemo administrator the ability to deploy Jemo plugins whose |
| code is hosted on a <a href="https://github.com/" target="_blank">Github</a> repository. |
| To use this functionality, make sure you have <a href="https://git-scm.com/" target="_blank">git</a> and |
| <a href="https://maven.apache.org/" target="_blank">mvn</a> installed and available on your Path. Run: |
| <pre> > git --version |
| > mvn --version</pre> |
| |
| <p>You will be redirected to a form asking you to provide the following parameters.</p> |
| |
| <table class="tableblock frame-all grid-all stretch"> |
| <caption class="title">Table 1. CI/CD patterns</caption> |
| <colgroup> |
| <col style="width: 10%;"> |
| <col style="width: 20%;"> |
| <col style="width: 20%;"> |
| <col style="width: 50%;"> |
| </colgroup> |
| <thead> |
| <tr> |
| <th class="tableblock halign-left valign-top">Parameter</th> |
| <th class="tableblock halign-left valign-top">Mandatory/Optional</th> |
| <th class="tableblock halign-left valign-top">Example</th> |
| <th class="tableblock halign-left valign-top">Description</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <td class="tableblock halign-left valign-top"><p class="tableblock"><code>repoUrl</code></p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock"><code>M</code></p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">https://github.com/ytheohar/jemo.git</p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">The https url to clone from</p></td> |
| </tr> |
| <tr> |
| <td class="tableblock halign-left valign-top"><p class="tableblock"><code>branch</code></p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock"><code>O</code> - the default is "master"</p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">monitor-plugins-improvements</p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">the branch of the repository</p></td> |
| </tr> |
| <tr> |
| <td class="tableblock halign-left valign-top"><p class="tableblock"><code>subDir</code></p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock"><code>O</code> - the default is the root folder</p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">demos/jemo-trader-app</p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">The sub directory within the repository where the code is located</p></td> |
| </tr> |
| <tr> |
| <td class="tableblock halign-left valign-top"><p class="tableblock"><code>pluginId</code></p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock"><code>M</code></p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">1</p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">The plugin id</p></td> |
| </tr> |
| </tbody> |
| </table> |
| |
| <p>When your click the SUBMIT button, Jemo starts a process where it runs the following commands: |
| <pre> > git clone --single-branch --branch monitor-plugins-improvements <repoUrl> cicd/1 |
| > mvn deploy -f cicd/1/demos/jemo-trader-app/pom.xml -Djemo.username=<JEMO_ADMIN_USER_NAME> -Djemo.password=<JEMO_ADMIN_PASSWORD> -Djemo.id=1 -Djemo.endpoint=http://localhost</pre> |
| The output of these commands is displayed on your screen, along with a message at the top notifying you |
| about the status of the deployment (success or failure). |
| You can browse back on your browser and select the <code>Admin Panel</code> option |
| to verify the plugin version was deployed and runs on the Jemo cluster. Notice that the plugin version |
| is determined by the artifact version defined in the pom file of the plugin repository. |
| </p> |
| |
| |
| </div> |
| <!-- ./end #midcolumn --> |
| |
| <!-- Start of the right column --> |
| <!-- ./end #rightcolumn --> |