Skip to content

Add Milestone.releases GraphQL field

Alex Kalderimis requested to merge ajk-gql-milestone-releases into master

What does this MR do and why?

Adds the ability to retrieve associated release data for milestones.

See: https://docs.gitlab.com/ee/user/project/releases/#associate-milestones-with-a-release

In the course of doing this, the following bugs were identified and addressed:

This new field is made N+1 safe by preloading the releases association on Milestone.

Example GraphQL query:

query($day: Time!, $version: String) {
  group(fullPath: "gitlab-org") {
    milestones(first: 1, sort: DUE_DATE_ASC, containingDate: $day, searchTitle: $version) {
      nodes {
        title
        releases {
          nodes { name description releasedAt tagName }
        }
      }
    }
  }
}

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Alex Kalderimis

Merge request reports

Loading