summaryrefslogtreecommitdiff
path: root/app/models/commit_status.rb
diff options
context:
space:
mode:
authorKamil Trzcinski <ayufan@ayufan.eu>2016-08-09 21:24:33 +0200
committerKamil Trzcinski <ayufan@ayufan.eu>2016-08-09 21:24:33 +0200
commit86faee081d4e9e0e01a646e59bd6845ad5241a18 (patch)
treed6a43cf2f51ba423faf1740fa6b0c76017778d53 /app/models/commit_status.rb
parent92c34e56b6f81ba46978ca38c579eb916e4953d5 (diff)
parentab3cfd520dc02a62dea2a8d73a4060fc1cbc865a (diff)
downloadgitlab-ce-pipeline-hooks-without-touch.tar.gz
Merge branch 'refactor-builds-creation-service' into pipeline-hooks-without-touchpipeline-hooks-without-touch
Diffstat (limited to 'app/models/commit_status.rb')
-rw-r--r--app/models/commit_status.rb5
1 files changed, 4 insertions, 1 deletions
diff --git a/app/models/commit_status.rb b/app/models/commit_status.rb
index 79e038b6a78..9c730904ba3 100644
--- a/app/models/commit_status.rb
+++ b/app/models/commit_status.rb
@@ -70,9 +70,12 @@ class CommitStatus < ActiveRecord::Base
MergeRequests::AddTodoWhenBuildFailsService.new(commit_status.pipeline.project, nil).execute(commit_status)
end
- after_transition any => [:success, :failed, :canceled] do |commit_status|
+ # We use around_transition to process pipeline on next stages as soon as possible, before the `after_*` is executed
+ around_transition any => [:success, :failed, :canceled] do |commit_status, block|
+ block.call
if commit_status.pipeline
commit_status.pipeline.process!
+ commit_status.pipeline.reload_status!
end
end
end