4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# File 'lib/big_brother/cli.rb', line 4
def parse!(args)
args, options = args.dup, {}
opt_parser = OptionParser.new do |opts|
opts.banner = "Usage: bigbro [options]"
opts.on("-c", "--config=file", String,
"BigBrother configuration file", "Default: /etc/big_brother.conf") { |v| options[:big_brother_config] = v }
opts.on("-D", "--data-dir=path", String,
"BigBrother data directory", "Default: /etc/big_brother") { |v| options[:config_dir] = v }
opts.on("-v", "--verbose", "Log more verbosely") { options[:verbose] = true }
opts.separator ""
opts.on("-p", "--port=port", Integer,
"Runs BigBrother on the specified port.", "Default: 9292") { |v| options[:Port] = v }
opts.on("-b", "--binding=ip", String,
"Binds BigBrother to the specified ip.", "Default: 0.0.0.0") { |v| options[:Host] = v }
opts.on("-d", "--daemon", "Make server run as a Daemon.") { options[:daemonize] = true }
opts.on("-P","--pid=pid",String,
"Specifies the PID file.",
"Default: rack.pid") { |v| options[:pid] = v }
opts.separator ""
opts.on("-h", "--help", "Show this help message.") { puts opts; exit }
end
opt_parser.parse! args
options[:config] = File.expand_path("../../config.ru", File.dirname(__FILE__))
options[:server] = 'thin-with-callbacks'
options[:backend] = Thin::Backends::TcpServerWithCallbacks
options
end
|