diff options
Diffstat (limited to 'app/finders/merge_requests_finder.rb')
-rw-r--r-- | app/finders/merge_requests_finder.rb | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/app/finders/merge_requests_finder.rb b/app/finders/merge_requests_finder.rb index 275a01330bf..410ad645cd9 100644 --- a/app/finders/merge_requests_finder.rb +++ b/app/finders/merge_requests_finder.rb @@ -39,6 +39,7 @@ class MergeRequestsFinder < IssuableFinder def filter_items(_items) items = by_commit(super) + items = by_deployment(items) items = by_source_branch(items) items = by_wip(items) items = by_target_branch(items) @@ -101,6 +102,17 @@ class MergeRequestsFinder < IssuableFinder .or(table[:title].matches('WIP %')) .or(table[:title].matches('[WIP]%')) end + + def by_deployment(items) + return items unless deployment_id + + items.includes(:deployment_merge_requests) + .where(deployment_merge_requests: { deployment_id: deployment_id }) + end + + def deployment_id + @deployment_id ||= params[:deployment_id].presence + end end MergeRequestsFinder.prepend_if_ee('EE::MergeRequestsFinder') |