diff options
Diffstat (limited to 'bin')
-rwxr-xr-x | bin/unicorn | 27 | ||||
-rwxr-xr-x | bin/unicorn_rails | 27 |
2 files changed, 4 insertions, 50 deletions
diff --git a/bin/unicorn b/bin/unicorn index ebf57c3..9deb872 100755 --- a/bin/unicorn +++ b/bin/unicorn @@ -1,6 +1,5 @@ #!/home/ew/bin/ruby -$stdin.sync = $stdout.sync = $stderr.sync = true -require 'unicorn' # require this first to populate Unicorn::DEFAULT_START_CTX +require 'unicorn/launcher' require 'optparse' env = "development" @@ -163,27 +162,5 @@ if $DEBUG }) end -# only daemonize if we're not inheriting file descriptors from our parent -if daemonize - - $stdin.reopen("/dev/null") - unless ENV['UNICORN_FD'] - exit if fork - Process.setsid - exit if fork - end - - # We don't do a lot of standard daemonization stuff: - # * $stderr/$stderr can/will be redirected separately - # * umask is whatever was set by the parent process at startup - # and can be set in config.ru and config_file, so making it - # 0000 and potentially exposing sensitive log data can be bad - # policy. - # * Don't bother to chdir here since Unicorn is designed to - # run inside APP_ROOT. Unicorn will also re-chdir() to - # the directory it was started in when being re-executed - # to pickup code changes if the original deployment directory - # is a symlink or otherwise got replaced. -end - +Unicorn::Launcher.daemonize! if daemonize Unicorn.run(app, options) diff --git a/bin/unicorn_rails b/bin/unicorn_rails index 0deace1..4b0a34e 100755 --- a/bin/unicorn_rails +++ b/bin/unicorn_rails @@ -1,6 +1,5 @@ #!/home/ew/bin/ruby -$stdin.sync = $stdout.sync = $stderr.sync = true -require 'unicorn' # require this first to populate Unicorn::DEFAULT_START_CTX +require 'unicorn/launcher' require 'optparse' require 'fileutils' @@ -208,31 +207,9 @@ if $DEBUG }) end -# only daemonize if we're not inheriting file descriptors from our parent -if daemonize - options[:pid] = rails_pid - $stdin.reopen("/dev/null") - unless ENV['UNICORN_FD'] - exit if fork - Process.setsid - exit if fork - end - - # We don't do a lot of standard daemonization stuff: - # * $stderr/$stderr can/will be redirected separately - # * umask is whatever was set by the parent process at startup - # and can be set in config.ru and config_file, so making it - # 0000 and potentially exposing sensitive log data can be bad - # policy. - # * Don't bother to chdir here since Unicorn is designed to - # run inside APP_ROOT. Unicorn will also re-chdir() to - # the directory it was started in when being re-executed - # to pickup code changes if the original deployment directory - # is a symlink or otherwise got replaced. -end - # ensure Rails standard tmp paths exist %w(cache pids sessions sockets).each do |dir| FileUtils.mkdir_p("tmp/#{dir}") end +Unicorn::Launcher.daemonize! if daemonize Unicorn.run(app, options) |