Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKamil Trzcinski <ayufan@ayufan.eu>2016-10-06 14:10:50 +0300
committerKamil Trzcinski <ayufan@ayufan.eu>2016-10-06 14:16:34 +0300
commit3f85c3ef1629870e22f6a676585e8de80e5120c3 (patch)
tree141a1ef7d8fb0eaa79e203331d36671a60993070 /app/services/create_deployment_service.rb
parent2c01b19f8f55c7105506cdbe964d24d0a3c6dfc4 (diff)
Initial support for closing environments
Diffstat (limited to 'app/services/create_deployment_service.rb')
-rw-r--r--app/services/create_deployment_service.rb12
1 files changed, 11 insertions, 1 deletions
diff --git a/app/services/create_deployment_service.rb b/app/services/create_deployment_service.rb
index 799ad3e1bd0..c87542e57a2 100644
--- a/app/services/create_deployment_service.rb
+++ b/app/services/create_deployment_service.rb
@@ -4,6 +4,13 @@ class CreateDeploymentService < BaseService
def execute(deployable = nil)
environment = find_or_create_environment
+ if close?
+ environment.close
+ return
+ end
+
+ environment.reopen
+
deployment = project.deployments.create(
environment: environment,
ref: params[:ref],
@@ -14,7 +21,6 @@ class CreateDeploymentService < BaseService
)
deployment.update_merge_request_metrics!
-
deployment
end
@@ -44,6 +50,10 @@ class CreateDeploymentService < BaseService
options[:url]
end
+ def close?
+ options[:close]
+ end
+
def options
params[:options] || {}
end