Skip to content

Instantly share code, notes, and snippets.

@v-yarotsky
Created April 4, 2013 13:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save v-yarotsky/5310386 to your computer and use it in GitHub Desktop.
Save v-yarotsky/5310386 to your computer and use it in GitHub Desktop.
$ bundle exec rake
Run options:
# Running tests:
..../home/travis/.rvm/gems/ruby-1.9.3-p327/gems/eventmachine-1.0.3/lib/eventmachine.rb:526:in `start_tcp_server': no acceptor (port is in use or requires root privileges) (RuntimeError)
from /home/travis/.rvm/gems/ruby-1.9.3-p327/gems/eventmachine-1.0.3/lib/eventmachine.rb:526:in `start_server'
from /home/travis/.rvm/gems/ruby-1.9.3-p327/gems/em-proxy-0.1.8/lib/em-proxy/proxy.rb:10:in `block in start'
from /home/travis/.rvm/gems/ruby-1.9.3-p327/gems/eventmachine-1.0.3/lib/eventmachine.rb:187:in `call'
from /home/travis/.rvm/gems/ruby-1.9.3-p327/gems/eventmachine-1.0.3/lib/eventmachine.rb:187:in `run_machine'
from /home/travis/.rvm/gems/ruby-1.9.3-p327/gems/eventmachine-1.0.3/lib/eventmachine.rb:187:in `run'
from /home/travis/.rvm/gems/ruby-1.9.3-p327/gems/em-proxy-0.1.8/lib/em-proxy/proxy.rb:5:in `start'
from /home/travis/build/v-yarotsky/turnout_proxy/lib/turnout_proxy.rb:7:in `run'
from /home/travis/build/v-yarotsky/turnout_proxy/bin/turnout_proxy:42:in `<main>'
./home/travis/.rvm/gems/ruby-1.9.3-p327/gems/eventmachine-1.0.3/lib/eventmachine.rb:526:in `start_tcp_server': no acceptor (port is in use or requires root privileges) (RuntimeError)
from /home/travis/.rvm/gems/ruby-1.9.3-p327/gems/eventmachine-1.0.3/lib/eventmachine.rb:526:in `start_server'
from /home/travis/.rvm/gems/ruby-1.9.3-p327/gems/em-proxy-0.1.8/lib/em-proxy/proxy.rb:10:in `block in start'
from /home/travis/.rvm/gems/ruby-1.9.3-p327/gems/eventmachine-1.0.3/lib/eventmachine.rb:187:in `call'
from /home/travis/.rvm/gems/ruby-1.9.3-p327/gems/eventmachine-1.0.3/lib/eventmachine.rb:187:in `run_machine'
from /home/travis/.rvm/gems/ruby-1.9.3-p327/gems/eventmachine-1.0.3/lib/eventmachine.rb:187:in `run'
from /home/travis/.rvm/gems/ruby-1.9.3-p327/gems/em-proxy-0.1.8/lib/em-proxy/proxy.rb:5:in `start'
from /home/travis/build/v-yarotsky/turnout_proxy/lib/turnout_proxy.rb:7:in `run'
from /home/travis/build/v-yarotsky/turnout_proxy/bin/turnout_proxy:42:in `<main>'
E
Finished tests in 2.774274s, 2.1627 tests/s, 1.8023 assertions/s.
require 'rubygems'
require 'bundler/setup'
require 'support/travis_spawn'
require 'eventmachine'
class HelloServer
include TravisSpawn
def initialize(port, message)
@pid = spawn("ruby -Itest #{__FILE__} #{port} #{message}")
at_exit { die }
end
def pid
@pid
end
def die
Process.kill(:SIGQUIT, pid)
end
end
def HelloServer(response)
Module.new do
define_method :receive_data do |data|
send_data "HTTP/1.1 200 OK\r\nContent-Length: #{response.length}\r\n\r\n#{response}"
close_connection_after_writing
end
end
end
if $0 == __FILE__
EventMachine.run do
EventMachine.start_server "0.0.0.0", ARGV[0].to_i, HelloServer(ARGV[1] || "OK")
end
end
require 'posix/spawn'
module TravisSpawn
include POSIX::Spawn
def spawn(command, *args)
if ENV["TRAVIS"]
command = "rvmsudo " + command
end
super(command, *args)
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment