summaryrefslogtreecommitdiff
path: root/app/services/ci/process_pipeline_service.rb
diff options
context:
space:
mode:
authorShinya Maeda <shinya@gitlab.com>2018-09-27 16:10:55 +0900
committerAlessio Caiazza <acaiazza@gitlab.com>2018-10-02 17:08:12 +0200
commit80a92650faf9d7ca7a706b6a74019d869598fe41 (patch)
tree458754122e13dffb1a40e7f2aec546e64e88bc26 /app/services/ci/process_pipeline_service.rb
parentf3348951a80f11b376d5d21843f57102630e1d5d (diff)
downloadgitlab-ce-80a92650faf9d7ca7a706b6a74019d869598fe41.tar.gz
Add Spec for ProcessPipelineService
Diffstat (limited to 'app/services/ci/process_pipeline_service.rb')
-rw-r--r--app/services/ci/process_pipeline_service.rb30
1 files changed, 2 insertions, 28 deletions
diff --git a/app/services/ci/process_pipeline_service.rb b/app/services/ci/process_pipeline_service.rb
index 5e8a3976cc0..446188347df 100644
--- a/app/services/ci/process_pipeline_service.rb
+++ b/app/services/ci/process_pipeline_service.rb
@@ -29,39 +29,13 @@ module Ci
if HasStatus::COMPLETED_STATUSES.include?(current_status)
created_builds_in_stage(index).select do |build|
Gitlab::OptimisticLocking.retry_lock(build) do |subject|
- process_build(subject, current_status)
+ Ci::ProcessBuildService.new(project, @user)
+ .execute(build, current_status)
end
end
end
end
- def process_build(build, current_status)
- if valid_statuses_for_when(build.when).include?(current_status)
- Ci::ProcessBuildService.new(project, @user).execute(build)
- true
- else
- build.skip
- false
- end
- end
-
- def valid_statuses_for_when(value)
- case value
- when 'on_success'
- %w[success skipped]
- when 'on_failure'
- %w[failed]
- when 'always'
- %w[success failed skipped]
- when 'manual'
- %w[success skipped]
- when 'delayed'
- %w[success skipped]
- else
- []
- end
- end
-
# rubocop: disable CodeReuse/ActiveRecord
def status_for_prior_stages(index)
pipeline.builds.where('stage_idx < ?', index).latest.status || 'success'