diff options
author | Eric Wong <normalperson@yhbt.net> | 2010-02-28 18:48:59 -0800 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2010-02-28 18:48:59 -0800 |
commit | 706cc445863ff99d8605257a43e7bbd633c604c8 (patch) | |
tree | 143bb3dc99493a5ee5bf61bce87a4880a0203cb4 /lib/unicorn.rb | |
parent | a31af29a22cb22072828391d8f421ccf6c59d9b5 (diff) | |
download | unicorn-706cc445863ff99d8605257a43e7bbd633c604c8.tar.gz |
This lets us reuse code for Zbatery and Rainbows!, too.
Diffstat (limited to 'lib/unicorn.rb')
-rw-r--r-- | lib/unicorn.rb | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/unicorn.rb b/lib/unicorn.rb index d3e9c3d..43ef9e8 100644 --- a/lib/unicorn.rb +++ b/lib/unicorn.rb @@ -32,7 +32,14 @@ module Unicorn # app (which we defer based on the outcome of "preload_app" in the # Unicorn config). The returned lambda will be called when it is # time to build the app. - def builder(ru) + def builder(ru, opts) + if ru =~ /\.ru\z/ + # parse embedded command-line options in config.ru comments + if File.open(ru, "rb") { |fp| fp.sysread(fp.stat.size) } =~ /^#\\(.*)/ + opts.parse! $1.split(/\s+/) + end + end + lambda do || inner_app = case ru when /\.ru$/ |