rename delete_server_worker to delete_expired_server_worker

This commit is contained in:
Anton Chuchkalov 2016-02-02 14:34:17 +07:00
parent f97f2fe751
commit 8d01ff77b9
5 changed files with 11 additions and 10 deletions

View File

@ -11,6 +11,7 @@ module Devops
STACK_TYPE = 5 STACK_TYPE = 5
DEPLOY_STACK_TYPE = 6 DEPLOY_STACK_TYPE = 6
DELETE_SERVER_TYPE = 7 DELETE_SERVER_TYPE = 7
EXPIRE_SERVER_TYPE = 8
attr_accessor :id, :file, :updated_at, :created_by, :project, :deploy_env, :type, :chef_node_name, :host, :status, :stack, :subreports, :job_result_code attr_accessor :id, :file, :updated_at, :created_by, :project, :deploy_env, :type, :chef_node_name, :host, :status, :stack, :subreports, :job_result_code

View File

@ -1,4 +1,4 @@
require "workers/delete_server_worker" require "workers/delete_expired_server_worker"
module Devops module Devops
module Executor module Executor
@ -9,7 +9,7 @@ module Devops
def schedule_expiration! def schedule_expiration!
return unless @expires return unless @expires
DeleteServerWorker.perform_in(interval_in_seconds, server_chef_node_name: @server.chef_node_name) DeleteExpiredServerWorker.perform_in(interval_in_seconds, server_chef_node_name: @server.chef_node_name)
end end
def interval_in_seconds def interval_in_seconds

View File

@ -5,12 +5,12 @@ RSpec.describe Devops::Executor::ExpirationScheduler do
describe '#schedule_expiration!' do describe '#schedule_expiration!' do
it 'schedules server deleting at given time' do it 'schedules server deleting at given time' do
expect(DeleteServerWorker).to receive(:perform_in).with(120, server_chef_node_name: 'chef_node_name') expect(DeleteExpiredServerWorker).to receive(:perform_in).with(120, server_chef_node_name: 'chef_node_name')
described_class.new('2m', server).schedule_expiration! described_class.new('2m', server).schedule_expiration!
end end
it "doesn't schedule job if expires is nil" do it "doesn't schedule job if expires is nil" do
expect(DeleteServerWorker).not_to receive(:perform_in) expect(DeleteExpiredServerWorker).not_to receive(:perform_in)
described_class.new(nil, server).schedule_expiration! described_class.new(nil, server).schedule_expiration!
end end
end end

View File

@ -139,14 +139,14 @@ RSpec.describe Devops::Executor::ServerExecutor, type: :executor, stubbed_connec
it 'schedules expiration for server' do it 'schedules expiration for server' do
deploy_env.expires = '2m' deploy_env.expires = '2m'
allow(DeleteServerWorker).to receive(:perform_in) allow(DeleteExpiredServerWorker).to receive(:perform_in)
expect(DeleteServerWorker).to receive(:perform_in).with(120, {server_chef_node_name: 'node_name'}) expect(DeleteExpiredServerWorker).to receive(:perform_in).with(120, {server_chef_node_name: 'node_name'})
create_server create_server
end end
it "doesn't schedule expiration if deploy_env.expires is nil" do it "doesn't schedule expiration if deploy_env.expires is nil" do
deploy_env.expires = nil deploy_env.expires = nil
expect(DeleteServerWorker).not_to receive(:perform_in) expect(DeleteExpiredServerWorker).not_to receive(:perform_in)
create_server create_server
end end

View File

@ -3,13 +3,13 @@ require "db/mongo/models/report"
require "lib/executors/server_executor" require "lib/executors/server_executor"
require "workers/worker" require "workers/worker"
class DeleteServerWorker < Worker class DeleteExpiredServerWorker < Worker
def perform(options) def perform(options)
chef_node_name = options.fetch('server_chef_node_name') chef_node_name = options.fetch('server_chef_node_name')
puts "Expire server '#{chef_node_name}'."
call() do |out, file| call() do |out, file|
out.puts "Expire server '#{chef_node_name}'."
server = mongo.server_by_chef_node_name(chef_node_name) server = mongo.server_by_chef_node_name(chef_node_name)
report = save_report(file, server) report = save_report(file, server)
@ -28,7 +28,7 @@ class DeleteServerWorker < Worker
"created_by" => 'SYSTEM', "created_by" => 'SYSTEM',
"project" => server.project, "project" => server.project,
"deploy_env" => server.deploy_env, "deploy_env" => server.deploy_env,
"type" => Devops::Model::Report::DELETE_SERVER_TYPE "type" => Devops::Model::Report::EXPIRE_SERVER_TYPE
) )
mongo.save_report(report) mongo.save_report(report)
report report