module Luban::Deployment::Applications::Rack::WebServer
Public Instance Methods
current_web_server()
click to toggle source
# File lib/luban/deployment/applications/rack/web_server.rb, line 20 def current_web_server; web_server[:name]; end
default_web_server_options()
click to toggle source
# File lib/luban/deployment/applications/rack/web_server.rb, line 8 def default_web_server_options raise NotImplementedError, "#{self.class.name}##{__method__} is an abstract method." end
publish_web_server()
click to toggle source
# File lib/luban/deployment/applications/rack/web_server.rb, line 22 def publish_web_server; end
web_servers_available()
click to toggle source
# File lib/luban/deployment/applications/rack/web_server.rb, line 12 def web_servers_available @web_servers ||= [:thin, :puma] end
web_servers_unused()
click to toggle source
# File lib/luban/deployment/applications/rack/web_server.rb, line 16 def web_servers_unused @web_servers_unused ||= web_servers_available.select { |s| s != current_web_server } end
Protected Instance Methods
init()
click to toggle source
Calls superclass method
# File lib/luban/deployment/applications/rack/web_server.rb, line 26 def init load_web_server super end
load_web_server()
click to toggle source
# File lib/luban/deployment/applications/rack/web_server.rb, line 31 def load_web_server require web_server_require_path singleton_class.send(:prepend, web_server_module(web_server_require_path)) rescue LoadError => e abort "Aborted! Failed to load web server #{current_web_server.inspect}." end
set_web_server_options()
click to toggle source
# File lib/luban/deployment/applications/rack/web_server.rb, line 50 def set_web_server_options web_server[:opts] = default_web_server_options.merge(web_server[:opts]) end
web_server_module(path)
click to toggle source
# File lib/luban/deployment/applications/rack/web_server.rb, line 46 def web_server_module(path) @web_server_module ||= Object.const_get(path.to_s.camelcase, false) end
web_server_require_path()
click to toggle source
# File lib/luban/deployment/applications/rack/web_server.rb, line 38 def web_server_require_path @web_server_require_path ||= web_server_require_root.join(current_web_server.to_s) end
web_server_require_root()
click to toggle source
# File lib/luban/deployment/applications/rack/web_server.rb, line 42 def web_server_require_root @web_server_require_root ||= Pathname.new("luban/deployment/applications/rack/web_servers") end