#731: fixed
This commit is contained in:
parent
f01973ce92
commit
947c7cdac4
@ -165,42 +165,56 @@ module Devops
|
||||
end
|
||||
|
||||
def deploy_project_stream out, id
|
||||
# check if project exist
|
||||
project = Devops::Db.connector.project(id)
|
||||
deploy_env, servers = parser.deploy
|
||||
keys = {}
|
||||
dbserver = servers(id, deploy_env, servers)
|
||||
dbserver = Devops::Db.connector.servers(id, deploy_env, servers, true)
|
||||
out << (dbservers.empty? ? "No reserved servers to deploy\n" : "Deploy servers: '#{dbservers.map{|s| s.chef_node_name}.join("', '")}'\n")
|
||||
status = []
|
||||
servers.each do |s|
|
||||
project = begin
|
||||
deploy_info_buf = {}
|
||||
dbservers.each do |s|
|
||||
begin
|
||||
Devops::Db.connector.check_project_auth s.project, s.deploy_env, parser.current_user
|
||||
rescue InvalidPrivileges, RecordNotFound => e
|
||||
out << e.message + "\n"
|
||||
status.push 2
|
||||
next
|
||||
end
|
||||
deploy_info = project.deploy_info(s.deploy_env, nil)
|
||||
deploy_env_model = project.deploy_env(s.deploy_env)
|
||||
deploy_info = if deploy_info_buf[s.deploy_env]
|
||||
deploy_info_buf[s.deploy_env]
|
||||
else
|
||||
# мы не можем указать один build_number для всех окружений, поэтому nil
|
||||
deploy_info_buf[s.deploy_env] = project.deploy_info(deploy_env_model, nil)
|
||||
end
|
||||
status.push(Devops::Executor::ServerExecutor.new(s, out).deploy_server(deploy_info))
|
||||
end
|
||||
status
|
||||
end
|
||||
|
||||
def deploy_project id
|
||||
# check if project exist
|
||||
project_model = Devops::Db.connector.project(id)
|
||||
deploy_env, servers = parser.deploy
|
||||
files = []
|
||||
servers(id, deploy_env, servers).each do |s|
|
||||
dbservers = Devops::Db.connector.servers(id, deploy_env, servers, true)
|
||||
out << (dbservers.empty? ? "No reserved servers to deploy\n" : "Deploy servers: '#{dbservers.map{|s| s.chef_node_name}.join("', '")}'\n")
|
||||
deploy_info_buf = {}
|
||||
dbservers.each do |s|
|
||||
begin
|
||||
Devops::Db.connector.check_project_auth s.project, s.deploy_env, parser.current_user
|
||||
rescue InvalidPrivileges, RecordNotFound => e
|
||||
next
|
||||
end
|
||||
|
||||
project_model = project(s.project)
|
||||
deploy_env_model = project_model.deploy_env(deploy_env)
|
||||
|
||||
puts '!!! WARNING !!!'
|
||||
puts 'build_number is set to empty string'
|
||||
build_number = ''
|
||||
deploy_info = project_model.deploy_info(deploy_env_model, build_number)
|
||||
deploy_env_model = project_model.deploy_env(s.deploy_env)
|
||||
deploy_info = if deploy_info_buf[s.deploy_env]
|
||||
deploy_info_buf[s.deploy_env]
|
||||
else
|
||||
# мы не можем указать один build_number для всех окружений, поэтому nil
|
||||
deploy_info_buf[s.deploy_env] = project_model.deploy_info(deploy_env_model, nil)
|
||||
end
|
||||
|
||||
uri = Worker.start_async(DeployWorker, @request,
|
||||
server_attrs: s.to_hash,
|
||||
@ -213,11 +227,6 @@ module Devops
|
||||
files
|
||||
end
|
||||
|
||||
def servers project_id, deploy_env, servers
|
||||
project = Devops::Db.connector.project(project_id)
|
||||
dbservers = Devops::Db.connector.servers(project_id, deploy_env, servers, true)
|
||||
end
|
||||
|
||||
def archive_project id
|
||||
project = Devops::Db.connector.project(id)
|
||||
Devops::Db.connector.archive_project(id)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user