Skip to content

Adds MR <> Jira association attributes to MR widget serializer

Aishwarya Subramanian requested to merge jira-mr-merge-rule into master

What does this MR do?

This MR adds the attributes for MR <> Jira association to the MergeRequestPollCachedWidgetEntity serializer.

Where will this data be used?

The Jira <> MR data will be used in the Frontend to block (disable) MR merge if Jira association is required in the Project Setting, and no reference to Jira Issue has been provided in the MR.

To check if Jira Issue reference has been provided in the MR, we use the methods available at Atlassian::JiraIssueKeyExtractor

In a seperate MR, I'll be adding checks to the Merge API to prevent the MR from being merged if the Jira requirements are not satisfied.

Mentions #280765 (closed)

API

Request

GET http://gdk.localhost:3443/:project_id/-/merge_requests/:merge_request_id/cached_widget.json

Response

  1. When feature is available
{
   ....
    "jira_associations": {
      "enforced": true,
      "issue_keys": ["PRODUCT-2012"]
    }
}
{
   ....
    "jira_associations": {
      "enforced": false,
      "issue_keys": ["PRODUCT-2012"]
    }
}
  1. When feature is not available

jira_associations key will not be returned.

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • Label as security and @ mention @gitlab-com/gl-security/appsec
  • The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • Security reports checked/validated by a reviewer from the AppSec team
Edited by Aishwarya Subramanian

Merge request reports