summaryrefslogtreecommitdiff
path: root/app/finders/merge_requests_finder.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/finders/merge_requests_finder.rb')
-rw-r--r--app/finders/merge_requests_finder.rb12
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')