Skip to content

Adds support for passing :allow_duplicate option

What does this MR do and why?

By default, we don't want to create "duplicate" pipeline runs. When a MR target branch changes, we don't generate a new MergeRequestDiff. As a result, when MergeRequest#find_actual_head_pipeline gets called, it returns the previous head pipeline. So the check will return false and will not create a new pipeline. It doesn't happen on RefreshService because we create a new MergeRequestDiff in that case.

This MR adds support for passing :allow_duplicate as an option to MergeRequests::CreatePipelineService

!107709 (comment 1223229232)

Screenshots or screen recordings

Screenshots are required for UI changes, and strongly recommended for all other merge requests.

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

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 Kerri Miller

Merge request reports