fluke/devops-service/workers/delete_expired_server_worker.rb
2016-03-09 16:16:52 +03:00

33 lines
757 B
Ruby

require "db/mongo/models/server"
require "db/mongo/models/report"
require "lib/executors/server_executor"
require "workers/worker"
class DeleteExpiredServerWorker < Worker
def perform(options)
call do
server_id = options.fetch('server_id')
puts_and_flush "Expire server '#{server_id}'."
server = mongo.server_by_instance_id(server_id)
report = save_report(server)
e = Devops::Executor::ServerExecutor.new(server, out)
e.report = report
e.delete_server
end
end
private
def save_report(server)
update_report(
"created_by" => 'SYSTEM',
"project" => server.project,
"deploy_env" => server.deploy_env,
"type" => Devops::Model::Report::EXPIRE_SERVER_TYPE
)
end
end