Skip to content
Snippets Groups Projects

Fix broken merge train merge when target branch deleted

All threads resolved!
2 files
+ 35
8
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -25,8 +25,17 @@ def cancel(merge_request)
end
def abort(merge_request, reason)
super do
SystemNoteService.abort_add_to_merge_train_when_pipeline_succeeds(merge_request, project, current_user, reason)
# If the merge request is already on a merge train, we need to destroy the car
# i.e. If the target branch is deleted which causes an abort with this strategy,
# after the pipeline succeeded and was added
#
if merge_request.merge_train_car
AutoMerge::MergeTrainService.new(project, current_user).abort(merge_request, reason)
# Before the pipeline succeeds and was added to the merge train
else
super do
SystemNoteService.abort_add_to_merge_train_when_pipeline_succeeds(merge_request, project, current_user, reason)
end
end
end
Loading