server executor, set report
This commit is contained in:
parent
413609be82
commit
31e86c5c6a
@ -35,6 +35,10 @@ module Devops
|
||||
@out.class.send(:define_method, :flush) { } unless @out.respond_to?(:flush)
|
||||
end
|
||||
|
||||
def report= r
|
||||
@report = r
|
||||
end
|
||||
|
||||
def project= p
|
||||
@project = p
|
||||
end
|
||||
|
||||
@ -15,12 +15,14 @@ class BootstrapWorker < Worker
|
||||
|
||||
call(provider_name) do |provider, out, file|
|
||||
server = Devops::Model::Server.new(server_attrs)
|
||||
save_report(file, owner, server)
|
||||
report = save_report(file, owner, server)
|
||||
|
||||
options = {
|
||||
bootstrap_template: bootstrap_template
|
||||
}
|
||||
status = Devops::Executor::ServerExecutor.new(server, out).two_phase_bootstrap(options)
|
||||
executor = Devops::Executor::ServerExecutor.new(server, out)
|
||||
executor.report = report
|
||||
status = executor.two_phase_bootstrap(options)
|
||||
mongo.set_report_server_data(jid, server.chef_node_name, server.public_ip || server.private_ip)
|
||||
status
|
||||
end
|
||||
@ -29,7 +31,7 @@ class BootstrapWorker < Worker
|
||||
private
|
||||
|
||||
def save_report(file, owner, server)
|
||||
report = {
|
||||
report_data = {
|
||||
"file" => file,
|
||||
"_id" => jid,
|
||||
"created_by" => owner,
|
||||
@ -37,7 +39,9 @@ class BootstrapWorker < Worker
|
||||
"deploy_env" => server.deploy_env,
|
||||
"type" => Devops::Model::Report::BOOTSTRAP_TYPE
|
||||
}
|
||||
mongo.save_report(Devops::Model::Report.new(report))
|
||||
report = Devops::Model::Report.new(report_data)
|
||||
mongo.save_report(report)
|
||||
report
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@ -14,10 +14,11 @@ class CreateServerWorker < Worker
|
||||
call(nil) do |not_used, out, file|
|
||||
project = mongo.project(server_attrs["project"])
|
||||
env = project.deploy_env(server_attrs["deploy_env"])
|
||||
save_report(file, project, env, owner)
|
||||
report = save_report(file, project, env, owner)
|
||||
|
||||
e = Devops::Executor::ServerExecutor.new(nil, out)
|
||||
e.project = project
|
||||
e.report = report
|
||||
e.deploy_env = env
|
||||
server_attrs["created_by"] = owner
|
||||
e.create_server(server_attrs)
|
||||
@ -27,7 +28,7 @@ class CreateServerWorker < Worker
|
||||
private
|
||||
|
||||
def save_report(file, project, env, owner)
|
||||
report = {
|
||||
report_data = {
|
||||
"file" => file,
|
||||
"_id" => jid,
|
||||
"created_by" => owner,
|
||||
@ -35,7 +36,9 @@ class CreateServerWorker < Worker
|
||||
"deploy_env" => env.identifier,
|
||||
"type" => Devops::Model::Report::SERVER_TYPE
|
||||
}
|
||||
mongo.save_report(Devops::Model::Report.new(report))
|
||||
report = Devops::Model::Report.new(report_data)
|
||||
mongo.save_report(report)
|
||||
report
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@ -10,9 +10,10 @@ class DeleteServerWorker < Worker
|
||||
|
||||
call(nil) do |not_used, out, file|
|
||||
server = mongo.server_by_chef_node_name(chef_node_name)
|
||||
save_report(file, server)
|
||||
report = save_report(file, server)
|
||||
|
||||
e = Devops::Executor::ServerExecutor.new(server, out)
|
||||
e.report = report
|
||||
e.delete_server
|
||||
end
|
||||
end
|
||||
@ -29,6 +30,7 @@ class DeleteServerWorker < Worker
|
||||
"type" => Devops::Model::Report::DELETE_SERVER_TYPE
|
||||
)
|
||||
mongo.save_report(report)
|
||||
report
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@ -14,9 +14,10 @@ class DeployWorker < Worker
|
||||
|
||||
call(nil) do |not_used, out, file|
|
||||
server = Devops::Model::Server.new(server_attrs)
|
||||
save_report(file, owner, server)
|
||||
report = save_report(file, owner, server)
|
||||
|
||||
executor = Devops::Executor::ServerExecutor.new(server, out)
|
||||
executor.report = report
|
||||
executor.deploy_server_with_tags(tags, deploy_info)
|
||||
end
|
||||
end
|
||||
@ -24,7 +25,7 @@ class DeployWorker < Worker
|
||||
private
|
||||
|
||||
def save_report(file, owner, server)
|
||||
report = {
|
||||
report_data = {
|
||||
"file" => file,
|
||||
"_id" => jid,
|
||||
"created_by" => owner,
|
||||
@ -35,7 +36,9 @@ class DeployWorker < Worker
|
||||
"chef_node_name" => server.chef_node_name,
|
||||
"host" => server.public_ip || server.private_ip
|
||||
}
|
||||
mongo.save_report(Devops::Model::Report.new(report))
|
||||
report = Devops::Model::Report.new(report_data)
|
||||
mongo.save_report(report)
|
||||
report
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@ -19,10 +19,11 @@ class ProjectTestWorker < Worker
|
||||
DevopsLogger.logger.info "Test project '#{project_name}' and env '#{deploy_env_name}' (user - #{user})"
|
||||
project = mongo.project(project_name)
|
||||
env = project.deploy_env(deploy_env_name)
|
||||
save_report(file, user, project_name, deploy_env_name)
|
||||
report = save_report(file, user, project_name, deploy_env_name)
|
||||
|
||||
executor = Devops::Executor::ServerExecutor.new(nil, out)
|
||||
executor.project = project
|
||||
executor.report = report
|
||||
executor.deploy_env = env
|
||||
|
||||
result = {:servers => []}
|
||||
@ -102,7 +103,7 @@ class ProjectTestWorker < Worker
|
||||
private
|
||||
|
||||
def save_report(file, user, project_name, deploy_env_name)
|
||||
report = {
|
||||
report_data = {
|
||||
"file" => file,
|
||||
"_id" => jid,
|
||||
"created_by" => user,
|
||||
@ -110,6 +111,8 @@ class ProjectTestWorker < Worker
|
||||
"deploy_env" => deploy_env_name,
|
||||
"type" => Devops::Model::Report::PROJECT_TEST_TYPE
|
||||
}
|
||||
mongo.save_report(Devops::Model::Report.new(report))
|
||||
report = Devops::Model::Report.new(report_data)
|
||||
mongo.save_report(report)
|
||||
report
|
||||
end
|
||||
end
|
||||
|
||||
@ -13,7 +13,7 @@ class StackBootstrapWorker < Worker
|
||||
|
||||
call(provider_name) do |provider, out, file|
|
||||
without_bootstrap = stack_attrs.delete('without_bootstrap')
|
||||
save_report(file, stack_attrs)
|
||||
report = save_report(file, stack_attrs)
|
||||
|
||||
stack = Devops::Model::StackFactory.create(provider_name, stack_attrs, out)
|
||||
mongo.stack_insert(stack)
|
||||
@ -23,7 +23,7 @@ class StackBootstrapWorker < Worker
|
||||
out << "\nStack '#{stack.name}' has been created\n"
|
||||
out.flush
|
||||
servers = persist_stack_servers!(stack, provider)
|
||||
bootstrap_servers(servers, out) unless without_bootstrap
|
||||
bootstrap_servers(servers, out, report) unless without_bootstrap
|
||||
end
|
||||
operation_result
|
||||
end
|
||||
@ -31,10 +31,12 @@ class StackBootstrapWorker < Worker
|
||||
|
||||
private
|
||||
|
||||
def bootstrap_servers(servers, out)
|
||||
def bootstrap_servers(servers, out, report)
|
||||
out << "\n"
|
||||
servers.map do |server|
|
||||
Devops::Executor::ServerExecutor.new(server, out).two_phase_bootstrap({})
|
||||
executor = Devops::Executor::ServerExecutor.new(server, out)
|
||||
executor.report = report
|
||||
executor.two_phase_bootstrap({})
|
||||
end
|
||||
end
|
||||
|
||||
@ -48,6 +50,7 @@ class StackBootstrapWorker < Worker
|
||||
"type" => ::Devops::Model::Report::STACK_TYPE
|
||||
)
|
||||
mongo.save_report(report)
|
||||
report
|
||||
end
|
||||
|
||||
def persist_stack_servers!(stack, provider)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user