diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2019-12-14 15:07:56 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2019-12-14 15:07:56 +0000 |
commit | 016af097cb1fa872fdc28a786d16315e55cd2701 (patch) | |
tree | 76f97f90a8048685efb3eb0c543b3a75d99be6ee /app/services/deployments/create_service.rb | |
parent | 00b8ecb72c9f77d864aff3572f028613f45af03c (diff) | |
download | gitlab-ce-016af097cb1fa872fdc28a786d16315e55cd2701.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/services/deployments/create_service.rb')
-rw-r--r-- | app/services/deployments/create_service.rb | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/app/services/deployments/create_service.rb b/app/services/deployments/create_service.rb index 89e3f7c8b83..7355747d778 100644 --- a/app/services/deployments/create_service.rb +++ b/app/services/deployments/create_service.rb @@ -11,15 +11,17 @@ module Deployments end def execute - create_deployment.tap do |deployment| - AfterCreateService.new(deployment).execute if deployment.persisted? + environment.deployments.build(deployment_attributes).tap do |deployment| + # Deployment#change_status already saves the model, so we only need to + # call #save ourselves if no status is provided. + if (status = params[:status]) + deployment.update_status(status) + else + deployment.save + end end end - def create_deployment - environment.deployments.create(deployment_attributes) - end - def deployment_attributes # We use explicit parameters here so we never by accident allow parameters # to be set that one should not be able to set (e.g. the row ID). @@ -31,8 +33,7 @@ module Deployments tag: params[:tag], sha: params[:sha], user: current_user, - on_stop: params[:on_stop], - status: params[:status] + on_stop: params[:on_stop] } end end |