diff options
Diffstat (limited to 'app/services/jira_connect/sync_service.rb')
-rw-r--r-- | app/services/jira_connect/sync_service.rb | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/app/services/jira_connect/sync_service.rb b/app/services/jira_connect/sync_service.rb index 497c282072d..5d9292a6967 100644 --- a/app/services/jira_connect/sync_service.rb +++ b/app/services/jira_connect/sync_service.rb @@ -9,6 +9,8 @@ module JiraConnect # Parameters: see Atlassian::JiraConnect::Client#send_info # Includes: update_sequence_id, commits, branches, merge_requests, pipelines def execute(**args) + preload_reviewers_for_merge_requests(args[:merge_requests]) if args.key?(:merge_requests) + JiraConnectInstallation.for_project(project).flat_map do |installation| client = Atlassian::JiraConnect::Client.new(installation.base_url, installation.shared_secret) @@ -43,5 +45,11 @@ module JiraConnect def logger Gitlab::IntegrationsLogger end + + def preload_reviewers_for_merge_requests(merge_requests) + ActiveRecord::Associations::Preloader.new( + records: merge_requests, associations: [:approvals, { merge_request_reviewers: :reviewer }] + ).call + end end end |