fluke/devops-service/workers/delete_server_worker.rb

32 lines
819 B
Ruby
Raw Normal View History

2016-02-02 11:43:13 +03:00
require "workers/worker"
class DeleteServerWorker < Worker
# options must contain 'server_id', 'current_user'
2016-02-02 11:43:13 +03:00
def perform(options)
2018-04-04 22:44:39 +03:00
server_id = options.fetch('server_id')
owner = options['user'] || 'SYSTEM'
2016-02-02 11:43:13 +03:00
2018-04-04 22:44:39 +03:00
call do |out, task|
server = Devops::Model::Server.find(server_id)
set_task_data({
"created_by" => owner,
"project" => server.project,
"environment" => server.environment,
"server_id" => server.id,
"category" => server.category,
"type" => Devops::Model::JobTask::DELETE_SERVER_TYPE
})
2016-02-02 11:43:13 +03:00
2018-04-04 22:44:39 +03:00
msg = "Trying to delete server '#{server.id}'"
logger.info msg
out.puts msg
out.flush
e = Devops::Executor::ServerExecutor.new(server, out, owner)
e.job_task = task
2016-02-02 11:43:13 +03:00
e.delete_server
end
end
end