diff options
| author | mo khan <mo.khan@gmail.com> | 2020-11-21 15:39:45 -0700 |
|---|---|---|
| committer | mo khan <mo.khan@gmail.com> | 2020-11-21 15:39:45 -0700 |
| commit | 02207fee03132766bba98f083d589b39ca7f5c60 (patch) | |
| tree | 77f1f1b5d196bfb7be1a3ea7e1cba81cb135918b | |
| parent | 7ebbed0ac1ba5dd8bcbcc2bbf26f0d4eba66f7b0 (diff) | |
feat: extract config.ru to be compatible with rackup
| -rw-r--r-- | config.ru | 12 | ||||
| -rwxr-xr-x | script/server | 2 | ||||
| -rw-r--r-- | server-rack.rb | 19 |
3 files changed, 15 insertions, 18 deletions
diff --git a/config.ru b/config.ru new file mode 100644 index 0000000..b5ce9c3 --- /dev/null +++ b/config.ru @@ -0,0 +1,12 @@ +#!/usr/bin/env ruby +# Usage: +# +# $ ./script/server +require_relative './server-rack' + +app = Rack::Builder.new do + use Rack::Reloader + run DataStorageServer.new +end.to_app + +Rack::Server.start(app: app, Port: 8282) diff --git a/script/server b/script/server index c9bda99..11fd9c5 100755 --- a/script/server +++ b/script/server @@ -4,4 +4,4 @@ set -e cd "$(dirname "$0")/.." -ruby server-rack.rb +ruby config.ru diff --git a/server-rack.rb b/server-rack.rb index d68d867..25a9733 100644 --- a/server-rack.rb +++ b/server-rack.rb @@ -1,7 +1,4 @@ #!/usr/bin/env ruby -# Usage: -# -# $ ./script/server require 'digest/sha1' require 'rack' require 'json' @@ -9,9 +6,8 @@ require 'json' class DataStorageServer MAX_BYTES=1024 - # You may initialize any variables you want to use across requests here - def initialize - @storage = {} + def initialize(storage: {}) + @storage = storage end # Download an Object @@ -91,14 +87,3 @@ class DataStorageServer path.split('/')[-1] end end - -# This starts the server if the script is invoked from the command line. No -# modifications needed here. -if __FILE__ == $0 - app = Rack::Builder.new do - use Rack::Reloader - run DataStorageServer.new - end.to_app - - Rack::Server.start(app: app, Port: 8282) -end |
