diff options
Diffstat (limited to 'app/services/merge_requests/refresh_service.rb')
-rw-r--r-- | app/services/merge_requests/refresh_service.rb | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/app/services/merge_requests/refresh_service.rb b/app/services/merge_requests/refresh_service.rb index ed977a5a872..0fb16597aff 100644 --- a/app/services/merge_requests/refresh_service.rb +++ b/app/services/merge_requests/refresh_service.rb @@ -44,6 +44,7 @@ module MergeRequests notify_about_push(mr) mark_mr_as_draft_from_commits(mr) execute_mr_web_hooks(mr) + merge_request_activity_counter.track_mr_including_ci_config(user: mr.author, merge_request: mr) end true @@ -74,7 +75,8 @@ module MergeRequests def post_merge_manually_merged commit_ids = @commits.map(&:id) merge_requests = @project.merge_requests.opened - .preload(:latest_merge_request_diff) + .preload_project_and_latest_diff + .preload_latest_diff_commit .where(target_branch: @push.branch_name).to_a .select(&:diff_head_commit) .select do |merge_request| @@ -116,11 +118,14 @@ module MergeRequests # Note: we should update merge requests from forks too def reload_merge_requests merge_requests = @project.merge_requests.opened - .by_source_or_target_branch(@push.branch_name).to_a + .by_source_or_target_branch(@push.branch_name) + .preload_project_and_latest_diff - merge_requests += merge_requests_for_forks.to_a + merge_requests_from_forks = merge_requests_for_forks + .preload_project_and_latest_diff - filter_merge_requests(merge_requests).each do |merge_request| + merge_requests_array = merge_requests.to_a + merge_requests_from_forks.to_a + filter_merge_requests(merge_requests_array).each do |merge_request| if branch_and_project_match?(merge_request) || @push.force_push? merge_request.reload_diff(current_user) # Clear existing merge error if the push were directed at the |