summaryrefslogtreecommitdiff
path: root/app/finders
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2021-02-16 18:09:24 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2021-02-16 18:09:24 +0000
commit1eec6b22b26d09ce6927adf66f98d755a6339815 (patch)
treeb1bb8bbdc0d49136bfd176a1e64d3bd9f2969396 /app/finders
parentb4e854a900ba9bcbfc3476f88317c59ea048daaf (diff)
downloadgitlab-ce-1eec6b22b26d09ce6927adf66f98d755a6339815.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/finders')
-rw-r--r--app/finders/ci/jobs_finder.rb3
-rw-r--r--app/finders/deployments_finder.rb25
2 files changed, 16 insertions, 12 deletions
diff --git a/app/finders/ci/jobs_finder.rb b/app/finders/ci/jobs_finder.rb
index 4ade3e6f031..4408c9cdb6d 100644
--- a/app/finders/ci/jobs_finder.rb
+++ b/app/finders/ci/jobs_finder.rb
@@ -45,7 +45,8 @@ module Ci
return unless pipeline
raise Gitlab::Access::AccessDeniedError unless can?(current_user, :read_build, pipeline)
- jobs_by_type(pipeline, type).latest
+ jobs_scope = jobs_by_type(pipeline, type)
+ params[:include_retried] ? jobs_scope : jobs_scope.latest
end
def filter_by_scope(builds)
diff --git a/app/finders/deployments_finder.rb b/app/finders/deployments_finder.rb
index bdcf7da3bea..89a28d9dfb8 100644
--- a/app/finders/deployments_finder.rb
+++ b/app/finders/deployments_finder.rb
@@ -1,5 +1,7 @@
# frozen_string_literal: true
+# WARNING: This finder does not check permissions!
+#
# Arguments:
# params:
# project: Project model - Find deployments for this project
@@ -27,11 +29,13 @@ class DeploymentsFinder
def execute
items = init_collection
items = by_updated_at(items)
+ items = by_finished_at(items)
items = by_environment(items)
items = by_status(items)
items = preload_associations(items)
- items = by_finished_between(items)
- sort(items)
+ items = sort(items)
+
+ items
end
private
@@ -44,11 +48,9 @@ class DeploymentsFinder
end
end
- # rubocop: disable CodeReuse/ActiveRecord
def sort(items)
- items.order(sort_params)
+ items.order(sort_params) # rubocop: disable CodeReuse/ActiveRecord
end
- # rubocop: enable CodeReuse/ActiveRecord
def by_updated_at(items)
items = items.updated_before(params[:updated_before]) if params[:updated_before].present?
@@ -57,6 +59,13 @@ class DeploymentsFinder
items
end
+ def by_finished_at(items)
+ items = items.finished_before(params[:finished_before]) if params[:finished_before].present?
+ items = items.finished_after(params[:finished_after]) if params[:finished_after].present?
+
+ items
+ end
+
def by_environment(items)
if params[:environment].present?
items.for_environment_name(params[:environment])
@@ -65,12 +74,6 @@ class DeploymentsFinder
end
end
- def by_finished_between(items)
- items = items.finished_between(params[:finished_after], params[:finished_before].presence) if params[:finished_after].present?
-
- items
- end
-
def by_status(items)
return items unless params[:status].present?