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:

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.

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: gitlab.com)

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.

Countermeasures to Synchronize

Select Countermeasures to synchronize.

Sync all Countermeasures

Synchronize all Countermeasures from SD Elements.

Sync Risk Policy Countermeasures

Synchronize only Countermeasures 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 Countermeasure. When you first synchronize a TODO Countermeasure 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:

  • ALM (default): The SD Elements Countermeasure will be updated to match the status in GitLab. This is relevant to most workflows.

  • SD Elements: The GitLab status will be updated to match the SD Elements status.

  • Last Status Change: The SD Elements and GitLab states will always reflect the latest update status. For example, if a GitLab issue is most recently updated then the SD Elements Countermeasure status will be updated to reflect the GitLab status. The opposite is also true.

Include code sample How-To’s in Countermeasure 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 Countermeasures

Select SD Elements Countermeasures to synchronize to GitLab.

Countermeasures having a minimum priority

Only synchronize Countermeasures 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)

Countermeasures with status meaning

Only synchronize Countermeasures with certain statuses, such as TODO or DONE. (Default: TODO)

Limit to Countermeasures having these phases

Only synchronize Countermeasures in certain phases, such as Requirements or Development. (Default: none selected, meaning Countermeasures from all phases will be synchronized)

Countermeasures having all of the following tags

Only synchronize Countermeasures containing certain SD Elements Countermeasure tags. (Optional)

Countermeasures with verification status

Only synchronize Countermeasures with a specific verification status, such as Pass or Fail. (Default: none selected, meaning Countermeasures 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: Countermeasure 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 Countermeasure 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.

results matching ""

    No results matching ""