summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShinya Maeda <shinya@gitlab.com>2018-11-02 10:06:49 +0900
committerShinya Maeda <shinya@gitlab.com>2018-11-02 10:17:47 +0900
commit56ac84cd8095afab5b909119445537b7da06a2ff (patch)
tree4bd5e23300e6c5a2b2e2c02c9467c21649d6977c
parent521561b6b303b54635c30cb23d78e49d14cec53d (diff)
downloadgitlab-ce-56ac84cd8095afab5b909119445537b7da06a2ff.tar.gz
Fix guard clause to prevent multiple deployments to a job
-rw-r--r--app/models/concerns/deployable.rb2
-rw-r--r--app/workers/build_success_worker.rb2
2 files changed, 1 insertions, 3 deletions
diff --git a/app/models/concerns/deployable.rb b/app/models/concerns/deployable.rb
index 8467ccb4ec6..ba3abf28ab0 100644
--- a/app/models/concerns/deployable.rb
+++ b/app/models/concerns/deployable.rb
@@ -7,7 +7,7 @@ module Deployable
after_create :create_deployment
def create_deployment
- return unless has_environment?
+ return unless has_environment? && !has_deployment?
environment = project.environments.find_or_create_by(
name: expanded_environment_name
diff --git a/app/workers/build_success_worker.rb b/app/workers/build_success_worker.rb
index 1623d8f02b9..f3530317090 100644
--- a/app/workers/build_success_worker.rb
+++ b/app/workers/build_success_worker.rb
@@ -22,8 +22,6 @@ class BuildSuccessWorker
# Therefore we no longer need to create a deployment, after a build succeeded.
# We're leaving this code for the transition period, but we can remove this code in 11.6.
def create_deployment(build)
- return if build.has_deployment?
-
build.create_deployment.try do |deployment|
deployment.succeed
end