Added more whois rake tasks

This commit is contained in:
Priit Tark 2015-09-03 11:28:41 +03:00
parent 14e0dbf6ab
commit 1b501dd053

View file

@ -16,15 +16,44 @@ namespace :whois do
puts "\n-----> all done in #{(Time.zone.now.to_f - start).round(2)} seconds"
end
# desc 'Delete whois database data and import from Registry master database (faster)'
# task export: :environment do
# start = Time.zone.now.to_f
# print "-----> Delete whois database data and import from Registry whois_records table..."
# whois_records = WhoisRecord.pluck(:name, :body, :json)
# Whois::Record.delete_all
# Whois::Record.import([:name, :body, :json], whois_records)
# puts "\n-----> all done in #{(Time.zone.now.to_f - start).round(2)} seconds"
# end
desc 'Create whois database'
task create: [:environment] do
whois_db = "whois_#{Rails.env}"
begin
puts "\n------------------------ Create #{whois_db} ---------------------------------------\n"
ActiveRecord::Base.clear_all_connections!
conf = ActiveRecord::Base.configurations
ActiveRecord::Base.connection.create_database(conf[whois_db]['database'].to_sym, conf[whois_db])
rescue => e
puts "\n#{e}"
end
end
desc 'Drop whois database'
task drop: [:environment] do
# just in case we allow only drop test, comment it out only for temp
if Rails.env.test?
whois_db = "whois_#{Rails.env}"
begin
puts "\n------------------------ #{whois_db} drop ------------------------------\n"
ActiveRecord::Base.clear_all_connections!
ActiveRecord::Base.establish_connection(whois_db.to_sym)
conf = ActiveRecord::Base.configurations
if ActiveRecord::Tasks::DatabaseTasks.drop(conf[whois_db])
puts "#{conf[whois_db]['database']} dropped"
else
puts "Didn't find database #{whois_db}, no drop"
end
rescue => e
puts "\n#{e}"
end
else
puts 'Only for test'
end
end
namespace :schema do
desc 'Load whois schema into empty whois database'