

Context
Xray allows Project Managers to configure remote jobs triggers for their CI/CD platforms, Xray supports the following CI/CD platforms out-of-the-box:
- Jenkins
- Bamboo
- GitHub
- GitLab
- Azure DevOps
Configuration page
Under "Project settings" page, a new option is available on "Xray Settings" group, named "Remote Jobs Trigger"
Create configuration
Users can create up to 10 CI/CD configurations at project level, and from those select 6 that would be available on the Test Execution/Test Plan issue type.
Access "Remote Jobs Trigger" option on Project settings: 
|
CI/CD platform to use by selecting "Enable..." configuration on the right. and you can have only one CI/CD tool selected at a given time. 
|
Click the button "New Jenkins Configuration" to create a new configuration: 
|
The new configuration screen will be displayed and you can fill in the input field regarding your CI/CD platform. Be aware that the fields may differ according to the CI/CD platform selected but there are a few that are mandatory and cross CI/CD platforms |
Generic fields:
- Configuration Name (Mandatory) - Name of the configuration, this is the reference that will be used on Test Plan/Test Execution on the "Trigger Build" option;
- (optional) - Key/value parameters list that you might have defined on your build and you want to pass from Xray.
To add more parameters, just click he option "Add" to have a new Key/Value added to the list. To remove parameters, click the "x" option displayed right after the Key/Value row.
You may also use the following options to add to the parameter value regarding Xray entities:- ${ISSUE_KEY} - this will be replaced with issue key that user is triggering the build from;
- ${TESTS_KEY} - this value will then be replaced with a comma separated string of test keys part of the issue the user is triggering the build from;
- ${PROJECT_KEY} - this value will then be replaced with project key;
- ${USER} - this value will then be replaced with logged user triggering the build.
CI/CD specific fields: - Jenkins:
- Job Name (Mandatory) - Exact job name defined on your Jenkins instance;
- API Token (Mandatory) - API token defined on Jenkins for this specific job;
- Username (Mandatory) - Jenkins user ID/name;
- API URL (Mandatory) - Jenkins endpoint url. e.g. jenkins.cloud.getxray.app/
- Password (Mandatory) - Jenkins user password

- Bamboo:
- Plan key (Mandatory) - Exact job name defined on your Jenkins instance;
- API URL (Mandatory) - Bamboo endpoint url. e.g. bamboo.cloud.getxray.app
- Username (Mandatory) - Bamboo username;
- Password (Mandatory) - Bamboo user password;
- Project Key (Mandatory) - Exact Bamboo project key

- GitHub:
- Repository Name (Mandatory) - Exact repository name;
- Workflow Id (Mandatory) - The desired workflow Id you want to use from your repository;
- Username (Mandatory) - GitHub username;
- API URL (Mandatory) - GitHub endpoint url. e.g. api.github.com
- Branch Name (Mandatory) - Repository branch name you want to trigger the build;
- Authentication Token (Mandatory) - GitHub Authentication token.

- GitLab:
- Branch Name (Mandatory) - Exact GitLab branch name;
- API Token (Mandatory) - GitLab API token;
- Username (Mandatory) - GitLab username;
- API URL (Mandatory) - GitLab endpoint url. e.g. gitlab.com
- Project Id (Mandatory) - GitLab project Id you want to trigger the build;
- Authentication Token (Mandatory) - GitLab Authentication token.

- Azure DevOps:
- Repository Name (Mandatory) - Exact repository name;
- Username (Mandatory) - Azure DevOps username;
- API URL (Mandatory) - Azure DevOps endpoint url. e.g. dev.azure.com
- Branch Name (Mandatory) - Exact Azure DevOps branch name;
- Pipeline Id (Mandatory) - Exact Azure DevOps branch name;
- Authentication Token (Mandatory) - Azure DevOps Authentication token.

|
Click "Save" to store your new configuration. |
|
Edit configuration
To edit an existing configuration, follow the following steps:
Select "Edit" on the Actions column options dropdown: 
|
The configuration screen will be displayed allowing to make your changes. |
Click "Save" to submit your changes. |
|
change the configuration status, for that you just need to change the switch on column "Status"

You can only have 6 configuration with status "enabled" at a given time, once you reach this limit the system will display a message informing the user regarding that. |
|
Delete configuration
To delete a configuration, head over to Actions column options dropdown and
