diff options
author | Mark Chao <mchao@gitlab.com> | 2018-06-25 18:20:29 +0300 |
---|---|---|
committer | Sean McGivern <sean@mcgivern.me.uk> | 2018-06-25 18:20:29 +0300 |
commit | ea25fbb8f594fb615571056c38d38a2a759c4e7b (patch) | |
tree | d785c7197ab1881b325f3194bf9101de9bded37b /app/models | |
parent | 6938335c6585868c32143c82bd8a0b7a710d1ba9 (diff) |
Notify conflict only for opened/locked merge requests
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/merge_request.rb | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb index f112c06e26f..6c96c8ca391 100644 --- a/app/models/merge_request.rb +++ b/app/models/merge_request.rb @@ -129,9 +129,7 @@ class MergeRequest < ActiveRecord::Base after_transition unchecked: :cannot_be_merged do |merge_request, transition| begin - # Merge request can become unmergeable due to many reasons. - # We only notify if it is due to conflict. - unless merge_request.project.repository.can_be_merged?(merge_request.diff_head_sha, merge_request.target_branch) + if merge_request.notify_conflict? NotificationService.new.merge_request_unmergeable(merge_request) TodoService.new.merge_request_became_unmergeable(merge_request) end @@ -708,6 +706,10 @@ class MergeRequest < ActiveRecord::Base should_remove_source_branch? || force_remove_source_branch? end + def notify_conflict? + (opened? || locked?) && !project.repository.can_be_merged?(diff_head_sha, target_branch) + end + def related_notes # Fetch comments only from last 100 commits commits_for_notes_limit = 100 |