GitLab
Technical requirements
-
An API token is required to connect, with the following scopes:
api
,read_user
. -
The user must have permission to create issues and update issue status in the project.
Default-assigned fields
The following fields are set by default:
-
Title
-
Description
-
Tags
Behavior
The integration supports the following:
-
Two-way status synchronization
Configuration
The following configuration fields are available when creating a connection. Fields are available for both system and project connections unless otherwise specified. Fields will only be available for project connections if allowed by the system connection.
Important
|
To ensure a successful integration, be sure to enter the correct values for the configuration fields instead of using the default values. Review the remaining fields as well, and change the default values as required. |
Default Priority Mapping
SD Elements |
GitLab |
7-10 |
High |
4-6 |
Medium |
1-3 |
Low |
Connection details
Enter the details SD Elements will use to connect to the GitLab server.
Protocol |
Select the protocol for the connection (HTTPS or HTTP) (Default: HTTPS) |
---|---|
Server |
The domain name or IP address of the server (Example: |
Context Root |
Top-level location where GitLab is installed on a server. The value for this may be dependent on the configuration of an internal corporate proxy, or where an administrator has installed GitLab. |
Credentials
Enter the token needed to authenticate to the server.
GitLab Token |
The token associated with the user connecting to the server. It is found in the section "Access Tokens" under a user’s GitLab settings. This user should be able to create and edit issues in GitLab. |
---|
Tasks to Synchronize
Select tasks to synchronize.
Sync all tasks |
Synchronize all tasks from SD Elements. |
---|---|
Sync Risk Policy tasks |
Synchronize only tasks that fall under the risk policy. |
Project details
Enter the project-level details.
Project |
The ID of the project, or namespace with project name (i.e. "name_space/project_name") where issues should be created. |
---|
Advanced GitLab configuration
GitLab issue label |
Label value assigned to GitLabel issues |
---|
Synchronization
Enter settings for synchronizing the SD Elements and GitLab projects.
Authoritative Source |
Select the tool that will be the authoritative system of record: GitLab or SD Elements. This field is used in case of conflicting statuses between the GitLab issue and the SD Elements task. When you first synchronize a TODO task in SD Elements with an issue in GitLab, they will have the same status. If you then change the status in one tool, such as by closing the issue in GitLab, they will have conflicting statuses. This conflict is resolved when the projects are synchronized. There are three options:
|
---|---|
Include code sample How-To’s in task descriptions |
Whether or not to include detailed code samples and How-To’s in the GitLab issue. |
This ALM server is hosted within a private network and cannot be reached directly by SD Elements. |
Select this option if SD Elements does not have direct network access to the GitLab server. For example, if you are using a hosted SD Elements instance but you want to integrate with an internal/protected GitLab system, choose this option and run the Remote Integration Agent to perform integration. |
Filter tasks
Select SD Elements tasks to synchronize to GitLab.
Tasks having a minimum priority |
Only synchronize tasks with a minimum priority, such as 7 or above. This is useful if you want to limit the amount of work for users. (Default: 1) |
---|---|
Tasks with status meaning |
Only synchronize tasks with certain statuses, such as TODO or DONE. (Default: TODO) |
Limit to tasks having these phases |
Only synchronize tasks in certain phases, such as Requirements or Development. (Default: none selected, meaning tasks from all phases will be synchronized) |
Tasks having all of the following tags |
Only synchronize tasks containing certain SD Elements task tags. (Optional) |
Tasks with verification status |
Only synchronize tasks with a specific verification status, such as Pass or Fail. (Default: none selected, meaning tasks with any verification status will be synchronized) |
Advanced ALM options
Enter advanced configuration options for the connector.
ALM Title Format |
Customize the issue titles created in the ALM by choosing one of the templates below. (Default: "T21: Task title") |
---|---|
Bypass server certificate validation for HTTPS (insecure, only for testing purposes) |
Check this option if you need to test a connection without the proper SSL/TLS certificates. |
Custom Priority Mapping |
By default, a label "High", "Medium" or "Low" is assigned to GitLab issues. Customize the labels by remapping SD Elements task priorities to another name. |
Sync frequency
Select how frequently the SD Elements and GitLab projects are synchronized. You can choose from the following options. The more frequently you run synchronization, the greater the performance impact on both the SD Elements and GitLab servers. This is generally only a concern for large organizations running many synchronizations at once.
Hourly, Daily, Weekly, or Monthly |
The projects will synchronize automatically every hour, day, week, or month. Daily synchronization is typically sufficient. However, you may want to select a more frequent interval if development moves quickly in your organization. |
---|---|
Manually |
You must click the Sync button on the ALM Integrations page to synchronize the projects. This is the default value. |