Merge branch 'cid-390-async_servers_deleting' into features
This commit is contained in:
commit
6306094883
@ -315,8 +315,9 @@ module Devops
|
||||
private
|
||||
|
||||
def delete_chosen_servers!(servers)
|
||||
current_user = parser.current_user
|
||||
reports = servers.map do |server|
|
||||
Worker.start_async(DeleteServerWorker, 'server_id' => server.id)
|
||||
Worker.start_async(DeleteServerWorker, 'server_id' => server.id, 'current_user' => current_user)
|
||||
end
|
||||
{reports: reports}
|
||||
end
|
||||
|
||||
@ -49,8 +49,9 @@ module Devops
|
||||
|
||||
def delete id
|
||||
server = get_server_by_key(id, parser.instance_key)
|
||||
Devops::Db.connector.check_project_auth server.project, server.deploy_env, parser.current_user
|
||||
jid = Worker.start_async(DeleteServerWorker, 'server_id' => id)
|
||||
current_user = parser.current_user
|
||||
Devops::Db.connector.check_project_auth server.project, server.deploy_env, current_user
|
||||
jid = Worker.start_async(DeleteServerWorker, 'server_id' => server.id, 'current_user' => current_user)
|
||||
[jid]
|
||||
end
|
||||
|
||||
|
||||
@ -2,18 +2,18 @@ require "db/mongo/models/server"
|
||||
require "db/mongo/models/report"
|
||||
require "lib/executors/server_executor"
|
||||
require "workers/worker"
|
||||
require 'byebug'
|
||||
|
||||
class DeleteServerWorker < Worker
|
||||
|
||||
# options should contain 'server_id'
|
||||
def perform(options)
|
||||
server_id = options.fetch('server_id')
|
||||
current_user = options.fetch('current_user')
|
||||
|
||||
call() do |out, file|
|
||||
out.puts "Deleting server with id #{server_id}" and out.flush
|
||||
@server = mongo.server_by_instance_id(server_id)
|
||||
report = save_report(file)
|
||||
report = save_report(file, current_user)
|
||||
|
||||
e = Devops::Executor::ServerExecutor.new(@server, out)
|
||||
e.report = report
|
||||
@ -23,11 +23,11 @@ class DeleteServerWorker < Worker
|
||||
|
||||
private
|
||||
|
||||
def save_report(file)
|
||||
def save_report(file, current_user)
|
||||
report = Devops::Model::Report.new(
|
||||
"file" => file,
|
||||
"_id" => jid,
|
||||
"created_by" => 'SYSTEM',
|
||||
"created_by" => current_user,
|
||||
"project" => @server.project,
|
||||
"deploy_env" => @server.deploy_env,
|
||||
"type" => Devops::Model::Report::DELETE_SERVER_TYPE
|
||||
|
||||
Loading…
Reference in New Issue
Block a user