diff --git a/Gemfile b/Gemfile index c0555e45..a66a06a7 100644 --- a/Gemfile +++ b/Gemfile @@ -12,7 +12,7 @@ gem 'sinatra-contrib', github: 'sinatra/sinatra-contrib', require: nil # TODO need to release the gem as soon i'm certain this change makes sense gem 'simple_states', github: 'svenfuchs/simple_states', branch: 'sf-set-state-early' -gem 'unicorn' +gem 'puma' gem "sentry-raven", github: 'getsentry/raven-ruby' gem 'yard-sinatra', github: 'rkh/yard-sinatra' gem 'rack-contrib', github: 'rack/rack-contrib' diff --git a/Gemfile.lock b/Gemfile.lock index c117f3d4..c7d85634 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -154,7 +154,7 @@ GEM arel (3.0.2) atomic (1.0.1) avl_tree (1.1.3) - backports (2.7.1) + backports (2.7.0) builder (3.0.4) bunny (0.8.0) celluloid (0.12.4) @@ -188,7 +188,6 @@ GEM i18n (0.6.1) journey (1.0.4) json (1.7.6) - kgio (2.8.0) listen (0.7.2) mail (2.4.4) i18n (>= 0.4.0) @@ -221,6 +220,8 @@ GEM coderay (~> 1.0.5) method_source (~> 0.8) slop (~> 3.4) + puma (1.6.3) + rack (~> 1.2) pusher (0.11.2) multi_json (~> 1.0) signature (~> 0.1.6) @@ -240,7 +241,6 @@ GEM rake (>= 0.8.7) rdoc (~> 3.4) thor (>= 0.14.6, < 2.0) - raindrops (0.10.0) rake (0.9.2.2) rdoc (3.12) json (~> 1.4) @@ -283,10 +283,6 @@ GEM polyglot polyglot (>= 0.3.1) tzinfo (0.3.35) - unicorn (4.5.0) - kgio (~> 2.6) - rack - raindrops (~> 0.7) uuidtools (2.1.3) yajl-ruby (1.1.0) yard (0.8.3) @@ -305,6 +301,7 @@ DEPENDENCIES micro_migrations! mocha (~> 0.12) pry + puma rack-cache (~> 1.2) rack-contrib! rake (~> 0.9.2) @@ -318,5 +315,4 @@ DEPENDENCIES travis-core! travis-sidekiqs! travis-support! - unicorn yard-sinatra! diff --git a/config.ru b/config.ru index 7806e127..a570b9e2 100644 --- a/config.ru +++ b/config.ru @@ -7,10 +7,10 @@ $stdout.sync = true require 'travis/api/app' require 'core_ext/module/load_constants' -# models = Travis::Model.constants.map(&:to_s) -# only = [/^(ActiveRecord|ActiveModel|Travis|GH|#{models.join('|')})/] -# [Travis::Api, Travis, GH].each do |target| -# target.load_constants! :only => only, :skip => ['Travis::Memory', 'GH::ResponseWrapper'], :debug => false -# end +models = Travis::Model.constants.map(&:to_s) +only = [/^(ActiveRecord|ActiveModel|Travis|GH|#{models.join('|')})/] +[Travis::Api, Travis, GH].each do |target| + target.load_constants! :only => only, :skip => ['Travis::Memory', 'GH::ResponseWrapper'], :debug => false +end run Travis::Api::App.new diff --git a/script/server b/script/server index cf218d5f..a17c4245 100755 --- a/script/server +++ b/script/server @@ -3,6 +3,6 @@ cd "$(dirname "$0")/.." [ $PORT ] || PORT=3000 [ $RACK_ENV ] || RACK_ENV=development -cmd="ruby -I lib -S bundle exec ruby -I lib -S unicorn config.ru -c config/unicorn.rb -p $PORT -E $RACK_ENV" -[[ $RACK_ENV == "development" ]] && exec rerun "$cmd -l 127.0.0.1:$PORT" +cmd="ruby -I lib -S bundle exec ruby -I lib -S puma config.ru -p $PORT -e $RACK_ENV --threads 0:16" +[[ $RACK_ENV == "development" ]] && exec rerun "$cmd -b tcp://127.0.0.1:$PORT" exec $cmd