How RMsis works with Atlassian Jira

This page provides a very high-level overview of RMsis application dependencies and the role each one plays in displaying an integrated view of RMsis and Jira.

Technical Introduction

Jira plugins can be installed on a Jira site to add new functionality or change the behavior of existing features. Most of the plugins available in the Jira marketplace deploy within Jira and store their data in the Jira database. However, RMsis deviates from this architecture and uses its own tomcat server for serving RMsis requests and a separate database to store its data.

  Architecture


Jira+RMsis Architecture Diagram

RMsis has two parts :

  • RMsis Server

    • This is the main RMsis application written in Java. It is deployed as a standard Java WAR file into a java Servlet Container such as Tomcat.

    • It uses its own embedded Tomcat server and its own database which is different from the one being used with Jira.

    • It uses the RMsis plugin to sync data (like projects, users, and Issues ) from JIRA.

  • RMsis Plugin

    • This installs alongside JIRA and synchronizes data between RMsis Application and JIRA.

    • The RMsis plugin syncs data between the RMsis application and JIRA. It does not communicate with any other/third-party/ external server or application.

    • It is also responsible for starting and stopping the RMsis Server during Jira startup and shutdown.

RMsis Plugin Installation


RMsis plugin can be installed using Jira Universal Plugin Manager by searching it on the Atlassian marketplace or by uploading the Jar file. The latest version of RMsis can be downloaded from the Atlassian marketplace or from the RMsis Downloads page.

RMsis plugin installation by searching it into Jira UPM

Once the RMsis plugin installation is complete. RMsis menu becomes available on the Jira menu bar.

RMsis Server Deployment


Upon clicking RMsis > RMsis Home, the RMsis plugin begins the RMsis server deployment process where it requests the user to insert network, mail, and database configurations necessary to launch the RMsis server. Once all the details are available, the RMsis plugin saves the configuration details and launches the RMsis server. This is a one-time process that must be performed by a Jira administrator. Subsequently, the RMsis plugin will automatically start or stop the RMsis server during Jira startup or shutdown.

RMsis access and subsequent communications


Once the RMsis server is up and running, users can access RMsis by logging into Jira and clicking on RMsis > RMsis Home. Upon accessing RMsis Home, an integrated view of Jira and RMsis is displayed to the user.

All the requests originating from RMsis are sent directly to the RMsis server where it is processed further. Whenever any information is required from Jira, the RMsis server sends a request to the RMsis plugin which requests the data from the Jira server and sends it back to the RMsis server. Similarly, if any information is required from RMsis, the RMsis plugin requests it from the RMsis server and shares it with the Jira server. The RMsis plugin serves as a link between RMsis and Jira and provides the necessary information to keep both servers in sync with one another.

 References and documentation