Необходимо перезагружать сервак, изначально писал отдельно shell и .rb скрипты которые вызывал в контроллере через system(), судя по логам в консоли сервер и вправду перезагружается, но на запросы бразура не отвечает вообще никак потом, как быть?
def restart_server
Thread.new do
system "ruby restart.rb"
end
render :json => {}
end
Запускаю тот же скрипт с консоли все перезагружается нормально
restart.rb:
require 'fileutils'
pid_file = 'tmp/pids/server.pid'
if File.exist?(pid_file)
pid = File.read(pid_file).to_i
Process.kill 9, pid
File.delete pid_file
puts "SERVER STOPPED"
else
puts "SERVER NOT STARTED"
end
system( "rails s -p 8090" )
Сервер thin окружение dev