2 # Copyright (c) 2009 Rainbows! hackers
3 # Copyright (c) 2010 Unicorn hackers
8 # sometimes we rely on http_proxy to avoid wasting bandwidth with Isolate
9 # and multiple Ruby versions
10 NO_PROXY
=${UNICORN_TEST_ADDR-127.0.0.1}
15 RUBY_VERSION
=${RUBY_VERSION-$($RUBY -e 'puts RUBY_VERSION')}
16 RUBY_ENGINE
=${RUBY_ENGINE-$($RUBY -e 'puts((RUBY_ENGINE rescue "ruby"))')}
17 t_pfx
=$PWD/trash
/$T-$RUBY_ENGINE-$RUBY_VERSION
23 test -x $PWD/bin
/unused_listen || die
"must be run in 't' directory"
28 while ! test -s "$path" && test $nr -gt 0
35 # given a list of variable names, create temporary files and assign
36 # the pathnames to those variables
48 T_RM_LIST
="$T_RM_LIST $_tmp"
52 T_RM_LIST
="$T_RM_LIST $_tmp"
56 T_OK_RM_LIST
="$T_OK_RM_LIST $_tmp"
66 sed -e "s/^/$id:/" < $_file
73 if grep -v $T $_r_err |
grep -i Error
75 die
"Errors found in $_r_err"
76 elif grep SIGKILL
$_r_err
78 die
"SIGKILL found in $_r_err"
85 port
=$
(expr $listen : '[^:]*:\([0-9]\+\)')
86 host=$
(expr $listen : '\([^:]*\):[0-9]\+')
88 rtmpfiles unicorn_config pid r_err r_out fifo tmp ok
89 cat > $unicorn_config <<EOF
97 unicorn_wait_start
() {
98 # no need to play tricks with FIFOs since we got "ready_pipe" now
99 unicorn_pid
=$
(cat $pid)
103 _cmd
="$(which sha1sum 2>/dev/null || :)"
104 test -n "$_cmd" || _cmd
="$(which openssl 2>/dev/null || :) sha1"
105 test "$_cmd" != " sha1" || _cmd
="$(which gsha1sum 2>/dev/null || :)"
107 # last resort, see comments in sha1sum.rb for reasoning
108 test -n "$_cmd" || _cmd
=sha1sum.rb
109 expr "$($_cmd)" : '\([a-f0-9]\{40\}\)'