require 'shogi_server/config'
require 'shogi_server/util'
require 'shogi_server/league/floodgate_thread.rb'
+require 'pathname'
require 'tempfile'
#################################################
floodgate-0-240.conf.sample or shogi_server/league/floodgate.rb
for format details.
+GRACEFUL SHUTDOWN
+
+ A file named "STOP" in the base directory prevents the server from
+ starting new games including Floodgate matches.
+ When you want to stop the server gracefully, first, create a STOP file
+
+ $ touch STOP
+
+ then wait for a while until all the running games complete.
+ Now you can stop the process with no game interruptted by the 'kill'
+ command.
+
+ Note that when a server gets started, a STOP file, if any, will be
+ deleted automatically.
+
FLOODGATE SCHEDULE CONFIGURATIONS
You need to set starting times of floodgate groups in
if $options["pid-file"]
$options["pid-file"] = File.expand_path($options["pid-file"], $topdir)
+ path = Pathname.new($options["pid-file"])
+ path.dirname().mkpath()
unless ShogiServer::is_writable_file? $options["pid-file"]
usage
$stderr.puts "Can not create the pid file: %s" % [$options["pid-file"]]
$stderr.puts("server started as a deamon [Revision: #{ShogiServer::Revision}]") if $options["daemon"]
log_message("server started [Revision: #{ShogiServer::Revision}]")
+ if ShogiServer::STOP_FILE.exist?
+ log_message("Deleted the STOP file")
+ ShogiServer::STOP_FILE.delete
+ end
+
server.start do |client|
begin
# client.sync = true # this is already set in WEBrick