GitHub action
This topic describes how to integrate with GitHub CI/CD build mechanisms for continuous integration and continuous delivery.
About the GitHub action
The Test Execution GitHub action lets you trigger tests on a OpenText Enterprise Performance Engineering server, monitor the tests, generate analysis or trend reports, and check report status.
The action can also synchronize scripts from the GitHub workspace to your OpenText Enterprise Performance Engineering project.
The tests can be pre-existing ones referenced by their ID, or tests defined in a YAML file stored in the GitHub repository.
For the latest capabilities and workflow examples, including script synchronization, see the GitHub documentation.
Prerequisites
The following are the prerequisites for setting up the GitHub action.
-
Perform these steps:
Copy codeactions/checkout@v6
actions/setup-java@v5 (version 17)
actions/setup-node@v6 -
Perform an npm install.
-
To save the reports as a build artifact, add
actions/upload-artifact@v7.
Note: User names and passwords should be saved as secrets and used as environment variables in the workflow.
Differential synchronization
To enable differential (incremental) synchronization using the WorkspaceSync action, configure your workflow as follows. If these settings are not applied, the action performs a full synchronization.
-
Required permissions:
Copy codepermissions:
contents: read
actions: read -
Provide GitHub token:
Copy codeGITHUB_TOKEN: ${{ github.token }} -
Configure Checkout with full history (
fetch-depth: 0required):Copy codesteps:
- name: Checkout code
uses: actions/checkout@v6
with:
fetch-depth: 0 # required for incremental WorkspaceSync
Action inputs
This table lists the action inputs for setting up and running a test.
| Input |
Description |
Required |
Default |
|---|---|---|---|
|
lre_action |
Action to trigger. Supported values are ExecuteLreTest and WorkspaceSync. If not defined, ExecuteLreTest is used. |
No |
ExecuteLreTest |
|
lre_description |
Description of the action (will be displayed in console logs). |
No |
Not Applicable |
|
lre_server |
Server URL and port
(when not mentioned, default is 80 or 433 for secured) and tenant (when not
mentioned, default is ?tenant=fa128c06-5436-413d-9cfa-9f04bb738df3). Example: mylreserver.mydomain.com:81/?tenant=fa128c06-5436-413d-9cfa-9f04bb738df3' |
Yes |
Not Applicable |
|
lre_https_protocol |
Use secured protocol for connecting to LRE. Possible values: true or false. |
No |
true |
|
lre_workspace_dir |
Local workspace root path. For WorkspaceSync, this directory is scanned for scripts and stores logs under <workspace>/logs. |
No |
If omitted, it is resolved with lre_output_dir. If both are omitted, ./ is used. |
|
lre_authenticate_with_token |
Authenticate with a token. This is required when SSO is configured. Possible values are true or false. |
No |
false |
|
lre_username |
Username |
Yes |
Not Applicable |
|
lre_password |
Password |
Yes |
Not Applicable |
|
lre_domain |
Domain (case sensitive) |
Yes |
Not Applicable |
|
lre_project |
Project (case sensitive) |
Yes |
Not Applicable |
|
lre_test |
A valid test ID# or relative path to yaml file in the git repo defining new test design creation |
Yes |
Not Applicable |
|
lre_test_instance |
The test instance. Specify AUTO to use any instance or enter a specific instance ID |
No |
AUTO |
|
lre_timeslot_duration_hours |
Timeslot duration in hours |
No |
0 |
|
lre_timeslot_duration_minutes |
Timeslot duration in minutes |
No |
30 |
|
lre_post_run_action |
Possible values for post run action: Collate Results, Collate and Analyze, or Do Not Collate |
No |
Do Not Collate |
|
lre_vuds_mode |
Use VUDS licenses. Possible values: true or false |
No |
false |
|
lre_trend_report |
One of the following values:
No value or not defined indicates no trend monitoring in build, but the trend report defined in LRE will not be canceled. |
No |
Not Applicable |
|
lre_proxy_out_url |
Proxy URL |
No |
Not Applicable |
|
lre_username_proxy |
Proxy username |
No |
Not Applicable |
|
lre_password_proxy |
Proxy password |
No |
Not Applicable |
|
lre_search_timeslot |
Experimental: Search for matching timeslot instead of creating a new timeslot. Possible values: true or false. |
No |
false |
|
lre_runtime_only |
Scripts upload mode for WorkspaceSync: true uploads runtime files only; false uploads all files. |
No |
true |
|
lre_workspace_sync_success_threshold |
Workspace Sync success threshold percentage for the WorkspaceSync action is 0 to 100. A value of 0 means synchronization does not fail based on the upload ratio. A value of 100 requires all uploads to succeed. Out-of-range values use 50. |
No |
50 |
|
lre_workspace_sync_base_sha |
WorkspaceSync only. Optional explicit base commit SHA used to compute changed files for incremental synchronization. |
No |
Not Applicable |
|
lre_workspace_sync_delete_removed_scripts |
WorkspaceSync only. If true, incremental synchronization also deletes scripts in OpenText Enterprise Performance Engineering when script folders are removed from the repository. |
No |
false |
|
lre_status_by_sla |
Report success status according to SLA. Possible values: true or false. |
No |
false |
|
lre_output_dir |
The directory used to read the checkout folder and save results. Use ${{ github.workspace }}. |
No |
./ |
|
lre_enable_stacktrace |
If set to true, a stack trace of the exception will be displayed with errors in console logs. |
No |
false |
For examples of using the action inputs and detailed setup instructions, including script synchronization, see the plugin documentation on github.com.

