Integrating Other CI/CD Systems

Run your Gatling Enterprise Edition simulations from any CI/CD product.

We provide dedicated support for a number of CI tools: GitHub Actions, Gitlab CI, Jenkins, Teamcity, Bamboo. However, we also document here how to run your simulations on Gatling Enterprise Edition from any other CI products, using either one of the supported build tools or our CI shell script. Note that we also provide dedicated instructions to use our CI shell script with Azure DevOps Pipelines.

This will not create a new Gatling Enterprise Edition simulation, you have to create it using the Gatling Enterprise Edition Dashboard before, or do it using the options provided by our build tools plugins:

Pre-requisites

You must first create an API token. It will be used to authenticate with Gatling Enterprise Edition. Most CI tools should offer a way to store this token securely, and expose it to build scripts as an environment variable.

In the following examples, we assume the API Token is available in an environment variable named GATLING_ENTERPRISE_API_TOKEN, which our tools will detect automatically.

We also assume that you have already configured a simulation on Gatling Enterprise Edition. You can copy the simulation ID from the simulations list view. In the following examples, we will show the simulation ID as 00000000-0000-0000-0000-000000000000.

Using a build tool plugin

You can build you Simulation, and then run the updated Simulation on Gatling Enterprise Edition, using the enterpriseStart command with any of our supported build tools.

With the waitForRunEnd=true option, it will display live metrics until the end of the run, and exit with an error code if the run fails on Gatling Enterprise Edition (e.g. if the run crashes or if the assertions fail).

Configure your CI build to run the command corresponding to the build tool you use:

gradle gatlingEnterpriseStart \
  -Dgatling.enterprise.simulationId=00000000-0000-0000-0000-000000000000 \
  -Dgatling.enterprise.waitForRunEnd=true
gradle gatlingEnterpriseStart \
  -Dgatling.enterprise.simulationId=00000000-0000-0000-0000-000000000000 \
  -Dgatling.enterprise.waitForRunEnd=true
mvn gatling:enterpriseStart \
  -Dgatling.enterprise.simulationId=00000000-0000-0000-0000-000000000000 \
  -Dgatling.enterprise.waitForRunEnd=true
sbt Gatling/enterpriseStart \
  -Dgatling.enterprise.simulationId=00000000-0000-0000-0000-000000000000 \
  -Dgatling.enterprise.waitForRunEnd=true

Using a shell script

This script launches an existing simulation on Gatling Enterprise Edition and displays live metrics.

It can be downloaded here.

Shell script requirements

This script runs with:

These tools must be installed on the machine or container where your CI system will execute the script.

Shell script usage

Configure your CI build to call the script with 3 parameters like this:

./start_simulation.sh \
  'http://my-gatling-instance.my-domain.tld' \
  "$GATLING_ENTERPRISE_API_TOKEN" \
  '00000000-0000-0000-0000-000000000000'
  • Gatling Enterprise Edition URL: address of your Gatling Enterprise Edition server, for example: http://my-gatling-instance.my-domain.tld.
  • API token: the API token will allow the script to authenticate to Gatling Enterprise Edition. The API token needs the All role.
  • Simulation ID: the ID of the simulation you want to start. You can get this ID on the Simulations table, with the icon.

Edit this page on GitHub