Kouhei Sutou
null+****@clear*****
Mon May 26 16:53:14 JST 2014
Kouhei Sutou 2014-05-26 16:53:14 +0900 (Mon, 26 May 2014) New Revision: 3f295f419b3f2e17a5e0c3c2e89aee9bea6ff49f https://github.com/droonga/droonga-engine/commit/3f295f419b3f2e17a5e0c3c2e89aee9bea6ff49f Message: Add --base-dir option Modified files: lib/droonga/command/droonga_engine.rb lib/droonga/path.rb Modified: lib/droonga/command/droonga_engine.rb (+16 -1) =================================================================== --- lib/droonga/command/droonga_engine.rb 2014-05-26 16:29:28 +0900 (cd1f8e3) +++ lib/droonga/command/droonga_engine.rb 2014-05-26 16:53:14 +0900 (99dd550) @@ -76,6 +76,7 @@ module Droonga add_connection_options(parser) add_log_options(parser) add_process_options(parser) + add_path_options(parser) end def listen_socket @@ -137,6 +138,16 @@ module Droonga end end + def add_path_options(parser) + parser.separator("") + parser.separator("Path:") + parser.on("--base-dir=DIR", + "Use DIR as the base directory", + "(#{Droonga::Path.base})") do |dir| + Droonga::Path.base = dir + end + end + def bind_heartbeat_socket socket = UDPSocket.new(address_family) socket.bind(@host, @port) @@ -159,7 +170,7 @@ module Droonga def run(command_line_arguments) parse_command_line_arguments!(command_line_arguments) - ENV[Droonga::Path::BASE_DIR_ENV_NAME] ||= Dir.pwd + ensure_path if****@confi*****? Process.daemon @@ -179,6 +190,10 @@ module Droonga parser.parse!(command_line_arguments) end + def ensure_path + Droonga::Path.base + end + def run_service(loop) service_runner = ServiceRunner.new(loop, @configuration) service_runner.run Modified: lib/droonga/path.rb (+6 -1) =================================================================== --- lib/droonga/path.rb 2014-05-26 16:29:28 +0900 (03b245e) +++ lib/droonga/path.rb 2014-05-26 16:53:14 +0900 (4ef27c9) @@ -21,7 +21,12 @@ module Droonga class << self def base - @base ||= Pathname.new(ENV[BASE_DIR_ENV_NAME] || Dir.pwd) + @base ||= Pathname.new(ENV[BASE_DIR_ENV_NAME] || Dir.pwd).expand_path + end + + def base=(new_base) + @base = nil + ENV[BASE_DIR_ENV_NAME] = new_base end def state -------------- next part -------------- HTML����������������������������... Download