class Embork::Server
Attributes
app[R]
backend[R]
disable_logging[R]
host[R]
port[R]
project_root[R]
sprockets_environment[R]
Public Class Methods
new(borkfile, options = {})
click to toggle source
# File lib/embork/server.rb, line 17 def initialize(borkfile, options = {}) @borkfile = borkfile if !options[:bundle_version].nil? Embork.bundle_version = options[:bundle_version] setup_bundled_mode elsif options[:with_latest_bundle] Embork.bundle_version = File.read(File.join(borkfile.project_root, Embork.env, current-version)) setup_bundled_mode elsif options[:enable_tests] setup_test_mode else setup_dev_mode end @disable_logging = options[:disable_logging] @port = options[:port] @host = options[:host] end
Public Instance Methods
build_app()
click to toggle source
# File lib/embork/server.rb, line 63 def build_app if @borkfile.backend == :static_index backend = Embork::Pushstate else Embork::Forwarder.target = @borkfile.backend backend = Embork::Forwarder end cascade_apps = @cascade_apps Rack::Builder.new do use backend run Rack::Cascade.new(cascade_apps) end end
run_webrick()
click to toggle source
# File lib/embork/server.rb, line 77 def run_webrick opts = { :Port => @port, :Host => @host } if @disable_logging opts[:Logger] = WEBrick::Log.new("/dev/null") opts[:AccessLog] = [] end Rack::Handler::WEBrick.run @app, opts end
setup_bundled_mode()
click to toggle source
# File lib/embork/server.rb, line 49 def setup_bundled_mode @project_root = File.join @borkfile.project_root, 'build', Embork.env.to_s static_directory = @project_root @cascade_apps = [ Rack::File.new(static_directory) ] @app = build_app end
setup_dev_mode()
click to toggle source
# File lib/embork/server.rb, line 35 def setup_dev_mode @environment = Embork::Environment.new(@borkfile) @sprockets_environment = @environment.sprockets_environment @project_root = @borkfile.project_root static_directory = File.join(project_root, 'static') @cascade_apps = [ @sprockets_environment, Rack::File.new(static_directory) ] @app = build_app end
setup_test_mode()
click to toggle source
# File lib/embork/server.rb, line 58 def setup_test_mode setup_dev_mode @sprockets_environment.prepend_path 'tests' end