Class: PuppetForgeServer::Server
Instance Method Summary
collapse
#get_api_version
#cache_instance, #configure_cache
DEFAULT_OPTIONS, #parse_options
Instance Method Details
#announce(options, backends) ⇒ Object
69
70
71
72
73
74
75
76
77
78
79
80
81
|
# File 'lib/puppet_forge_server/server.rb', line 69
def announce(options, backends)
options = options.clone
options.default = 'default'
@log.info " +- Daemonizing: #{options[:daemonize]}"
@log.info " |- Port: #{options[:port]}"
@log.info " |- Host: #{options[:host]}"
@log.info " |- Pidfile: #{options[:pidfile]}" if options[:pidfile]
@log.info " |- Server: #{options[:server]}"
@log.info ' `- Backends:'
backends.each do |backend|
@log.info " - #{backend.inspect}"
end
end
|
#build(backends, webui_root) ⇒ Object
#go(args) ⇒ Object
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# File 'lib/puppet_forge_server/server.rb', line 25
def go(args)
@log = PuppetForgeServer::Logger.get
begin
options = parse_options(args)
@log = logging(options)
configure_cache(options[:ram_cache_ttl], options[:ram_cache_size])
backends = backends(options)
server = build(backends, options[:webui_root])
announce(options, backends)
start(server, options)
rescue PuppetForgeServer::Errors::Expected => error
@log.error error
end
end
|
#logging(options) ⇒ Object
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
# File 'lib/puppet_forge_server/server.rb', line 41
def logging(options)
if options[:log_dir]
FileUtils.mkdir_p options[:log_dir]
server_loggers = [File.join(options[:log_dir], 'server.log')]
access_loggers = [File.join(options[:log_dir], 'access.log')]
if options[:debug]
server_loggers << STDERR
access_loggers << STDERR
end
PuppetForgeServer::Logger.set({:server => server_loggers, :access => access_loggers})
end
if options[:debug]
PuppetForgeServer::Logger.get(:server).level = ::Logger::DEBUG
PuppetForgeServer::Logger.get(:access).level = ::Logger::DEBUG
end
PuppetForgeServer::Logger.get
end
|
#start(server, options) ⇒ Object
83
84
85
86
87
88
89
90
91
92
93
|
# File 'lib/puppet_forge_server/server.rb', line 83
def start(server, options)
FileUtils.mkdir_p File.dirname(options[:pidfile]) if options[:pidfile]
Rack::Server.start(
:app => server,
:Host => options[:host],
:Port => options[:port],
:server => options[:server],
:daemonize => options[:daemonize],
:pid => options[:pidfile]
)
end
|