File: server

package info (click to toggle)
ruby-faraday 0.9.0-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 508 kB
  • ctags: 836
  • sloc: ruby: 4,882; sh: 138; makefile: 5
file content (36 lines) | stat: -rwxr-xr-x 911 bytes parent folder | download | duplicates (3)
1
2
3
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
#!/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