Description

Even though GenRocket is designed to run on a tester's or engineer's individual laptop or workstation, sometimes it is desirable to have users access GenRocket via a central application on a single computer. The GenRocket Multi-User Server (or GMUS) can be used to meet this need. 


In This Article


What is GMUS?

The GenRocket Multi-User Server (GMUS) allows many users to generate data via a central client application. The GMUS gives client applications the ability to let multiple users simultaneously run GenRocket Scenarios and generate synthetic data. It manages user requests by launching multiple instances of the GenRocket runtime engine, via the GenRocket API, to run multiple GenRocket Scenarios simultaneously.  


The GMUS guards against Scenario collisions when two or more users request to run the same Scenario whose Scenario state is set to true.  



Note: GMUS can support Proxy Server.


When Should GMUS Be Used? 

  • GMUS should be used when users within an organization need to access GenRocket through a central application on a single computer. 
  • GMUS can be used to integrate GenRocket Runtime with other tools. 
  • It also can be used to add automation by calling the provided APIs from Jenkins or other third-party tools.


Where should GMUS be installed?

  • GMUS will need to be installed on one of your servers, not where GenRocket is hosted.
  • You can run GMUS server on any server. The Scenarios that need to be run should be in a directory on the same system.

GMUS Server Specifications

Please refer to the following article to learn more about GMUS Server Specifications: 

How Does GMUS Work?

  1. Register the Client Application with GenRocket (one time).
    • Only users assigned the Org Admin role can perform this step.
  2. Register each Client Application User with GenRocket.
  3. (Optional) Set up a Custom SSL Configuration.
  4. Launch GMUS using the Startup and Launch Commands.
  5. (Optional) Users Download a GMUS Offline Certificate.
  6. Users Send Requests to GMUS (e.g., run a Scenario).


GMUS REST API Request URL

The URL will vary depending on if a VPC (Virtual Private Cloud) or DPC (Dedicated Private Cloud) has been set up for your organization. 

  • VPC - app.genrocket.com/rest
  • DPC - <dpc-url>.genrocket.com/rest


GMUS Sequence Execution of a Scenario

The diagram below shows the sequence and components the GMUS uses to load and execute a Scenario to generate synthetic test data.

  • GMUS - Orchestrates the validation and test data generation of clients’ test data request
  • GenRocket Engine - The engine loads and runs a Scenario
  • GenRocket User Profile - Used by the engine to validate the user
  • GenRocket Scenario - Contains instructions to generate synthetic data
  • GenRocket Cloud License Server - Validates a user’s permission to run a Scenario


 


GMUS with G-Repository Server (GRS) Sequence Execution of a Scenario

The diagram below shows the sequence and components the GMUS uses to load and execute a Scenario to generate synthetic test data. However, in this scenario, the GMUS uses the GRS to access GenRocket Cloud for license checking, downloading GenRocket Components, and uploading stats to the GenRocket Cloud.

  • GMUS - Orchestrates the validation and test data generation of clients’ test data request
  • GRS - Orchestrates communication between GMUS and GenRocket’s Cloud
  • GenRocket Engine - The engine loads and runs a Scenario
  • GenRocket User Profile - Used by the engine to validate the user
  • GenRocket Scenario - Contains instructions to generate synthetic data
  • GenRocket Cloud License Server - Validates a user’s permission to run a Scenario 


 

The following links can be used to follow the steps in the "How Does it Work?" section above.


TopicDescription
GMUS Ports OverviewLearn how to configure GMUS Ports

Registering a Client Application with GenRocket

Learn how to register a Client Application with GenRocket. 

Registering a Client Application User with GenRocket

Learn how to register each Client Application user with GenRocket.
How to Provide Custom SSL Configuration to GMUS REST ServerLearn more about using a custom SSL configuration for GMUS. 
GMUS Startup and Launch CommandsView available startup and launch commands for GMUS.
How to Download a GMUS Offline CertificateLearn how to download a GMUS offline certificate. Used when running GMUS on a restricted network server where validation must occur locally on the user's machine.
How to Make a Request to GMUS Running on One Server from Another ServerLearn how to make a request from another Server to GMUS Server. 


GMUS REST API Methods

The following table contains links to additional GMUS Rest API Methods that can be used once GMUS has been set up and running. All requests in this section use the POST method type.


TopicDescription
Launch G-Migration+Launch G-Migration+ from GMUS. 

Run a Scenario when inMemory parameter is False

Run a Scenario with inMemory parameter set to 'False.'

Run a Scenario when inMemory parameter is True

Run a Scenario with inMemory parameter set to 'True.'

Run a Scenario when inMemory parameter is Both

Run a Scenario with inMemory parameter set to 'Both'

Use the API to Modify a Scenario Before Execution

Modify a Scenario before it is executed.

Run multiple scenarios

Run multiple Scenarios.

Run multiple scenarios by Directory

Run multiple Scenarios that are present within a specified directory. 

Run a Scenario Chain

Run a Scenario Chain.

Run Scenario with a Test Data Case

Run a Scenario with a Test Data Case only.

Run Scenario with a Test Data Case (with Rules and Queries)

Run a Scenario with a Test Data Case and added Rules / Queries.

Run Scenario with a Test Data Rule

Run a Scenario with a Test Data Rule only.

Run Scenario with a Test Data Query

Run a Scenario with a Test Data Query only.

Get Information from Scenario

Get information from a Scenario.

Validate the output file download

Validate the output file that needs to be downloaded. 

Download the output file

Download the output file.

GMUS Localhost Web Management Options

See all available local host web management options.


GMUS REST API Methods (with G-Repository)

The following REST API Methods should be used when GMUS is used with G-Repository. All requests in this section use the POST method type.


TopicDescription
Create a Client Repo and Check the Status

Learn how to send a request to create a G-Repository Client Repo for a Project Version and check to see when the process has been completed.

Run a Scenario with G-Repository ClientLearn how to send a request to the GMUS to run a Scenario with the G-Repository Client. Payloads are also provided for running a Scenario with cases, rules, and queries. 
Run a Scenario Chain with G-Repository ClientLearn how to send a request to the GMUS to run a Scenario Chain with the G-Repository Client.
Run Multiple Scenario Chains with G-RepositoryLearn how to send a request to the GMUS to run multiple Scenario Chains with G-Repository Client.
Run a Scenario Chain Set with G-Repository ClientLearn how to send a request to the GMUS to run a Scenario Chain Set with the G-Repository Client.
Run a G-Story with G-Repository ClientLearn how to send a request to the GMUS to run a G-Story with the G-Repository Client.
Run a StoryEpic with G-Repository ClientLearn how to send a request to the GMUS to run a StoryEpic with the G-Repository Client.
GMUS G-Repo Queue API: Localhost Web Management OptionsSee all available local host web management options for GMUS G-Repo Queue. 


Additional Article Links

TopicDescription
Connecting GMUS from Spring BootLearn how to run GMUS on Sprint Boot. 
How to send customized notification emails from GMUSLearn how to send a user a customized notification email based on the email template and the API request parameters used in the request payload.
GMUS Groovy Code Example - Modifying a Scenario via GenRocket API commandsSee an example of how to modify a Scenario using GenRocket API Commands.