This commit is contained in:
amartynov 2015-10-22 15:18:49 +03:00
commit c0dcc52684
2 changed files with 7 additions and 5 deletions

View File

@ -119,11 +119,11 @@ module Devops
begin begin
unless env.identifier == deploy_env unless env.identifier == deploy_env
servers = Devops::Db.connector.servers_by_project_and_deploy_env(id, deploy_env) servers = Devops::Db.connector.servers_by_project_and_deploy_env(id, deploy_env)
raise InvalidRecord.new("Can not update environment '#{deploy_env}', there are #{servers.size} servers on it") unless servers.empty? raise InvalidRecord.new("Environment '#{deploy_env}' can't be updated: it has #{servers.size} running servers.") unless servers.empty?
end end
begin begin
project.deploy_env(env.identifier) project.deploy_env(env.identifier)
raise InvalidRecord.new("Can not change environment '#{deploy_env}' to '#{env.identifier}', environment '#{env.identifier}' already exist") unless deploy_env == env.identifier raise InvalidRecord.new("Environment '#{deploy_env}' can't be renamed to '#{env.identifier}', environment '#{env.identifier}' already exists") unless deploy_env == env.identifier
rescue RecordNotFound => e rescue RecordNotFound => e
end end
env.validate! env.validate!
@ -185,13 +185,15 @@ module Devops
def delete_project id def delete_project id
deploy_env = parser.delete deploy_env = parser.delete
servers = Devops::Db.connector.servers id
raise DependencyError.new "Deleting #{id} is forbidden: Project has servers" if !servers.empty?
project = Devops::Db.connector.project(id) project = Devops::Db.connector.project(id)
info = if deploy_env.nil? if deploy_env.nil?
servers = Devops::Db.connector.servers id
raise DependencyError.new "Deleting project #{id} is forbidden: Project has servers" unless servers.empty?
project.delete project.delete
"Project '#{id}' is deleted" "Project '#{id}' is deleted"
else else
servers = Devops::Db.connector.servers id, deploy_env
raise DependencyError.new "Deleting deploy_env #{deploy_env} is forbidden: Project has servers" unless servers.empty?
project.delete_deploy_env(deploy_env) project.delete_deploy_env(deploy_env)
"Project '#{id}'. Deploy environment '#{deploy_env}' has been deleted" "Project '#{id}'. Deploy environment '#{deploy_env}' has been deleted"
end end