#!/usr/bin/env ruby old_verbose, $VERBOSE = $VERBOSE, nil begin require File.expand_path('../../test/live_server', __FILE__) ensure $VERBOSE = old_verbose end require 'webrick' port = 4000 if found = ARGV.index('-p') port = ARGV[found + 1].to_i end log_io = $stdout log_io.sync = true webrick_opts = { :Port => port, :Logger => WEBrick::Log::new(log_io), :AccessLog => [[log_io, "[%{X-Faraday-Adapter}i] %m %U -> %s %b"]] } if ENV['SSL_KEY'] require 'openssl' require 'webrick/https' webrick_opts.update \ :SSLEnable => true, :SSLPrivateKey => OpenSSL::PKey::RSA.new(File.read(ENV['SSL_KEY'])), :SSLCertificate => OpenSSL::X509::Certificate.new(File.read(ENV['SSL_FILE'])), :SSLVerifyClient => OpenSSL::SSL::VERIFY_NONE end Rack::Handler::WEBrick.run(Faraday::LiveServer, webrick_opts) do |server| trap(:INT) { server.stop } trap(:TERM) { server.stop } end