No description, website, or topics provided.
Ruby
Switch branches/tags
Latest commit 8236160 Apr 15, 2017 @kaspergrubbe committed on GitHub Fix instructions
Permalink
Failed to load latest commit information.
configs
lib
.gitignore
.ruby-version
CHANGELOG.md
Gemfile
README.md
Rakefile
simple-capistrano-unicorn.gemspec

README.md

Simple Capistrano Unicorn

Contains a namespace with methods for administrating the unicorn server through capistrano recipes.

This gem is composed from the gems capistrano-unicorn-methods and capistrano-unicorn. It is roughly the structure of capistrano-unicorn-methods with clever ideas from capistrano-unicorn.

Setup

1. Add Gem to Gemfile

gem 'simple-capistrano-unicorn'

2. Require this gem

You should add this line to your Capfile:

require 'capistrano/simple-capistrano-unicorn'

3. Restart Unicorn on deploy

You should place this line in PROJECT_ROOT/config/deploy.rb:

after 'deploy', 'unicorn:restart'

4. Add your unicorn.rb

Grab the sample Unicorn configuration here: https://github.com/kaspergrubbe/simple-capistrano-unicorn/blob/master/configs/unicorn.conf.rb

And place it here: PROJECT_ROOT/config/unicorn.rb change the app_dir variable to suit your configuration.

Usage

Go through the setup and run: cap production deploy

The gem gives you access to the following tasks:

  • unicorn:start starts the Unicorn processes
  • unicorn:stop stops the Unicorn processes
  • unicorn:restart makes a seamless zero-downtime restart
  • unicorn:hard_restart basically runs unicorn:stop followed with a unicorn:start

Requirements

  • unicorn
  • capistrano

Customization

You can customize the gems behavior by setting any (or all) of the following options within capistrano's configuration:

  • unicorn_pid indicates the path for the pid file. Defaults to "#{shared_path}/tmp/pids/unicorn.pid".
  • unicorn_old_pid indicates the path for the old pid file, which Unicorn creates when forking a new master. Defaults to #{shared_path}/tmp/pids/unicorn.pid.oldbin.
  • unicorn_config the path to the unicorn config file. Defaults to "#{current_path}/config/unicorn.rb".
  • unicorn_log the path where unicorn places its STDERR-log. Defaults to "#{shared_path}/log/unicorn.stderr.log".
  • rack_env sets the environment that the server will run in. Defaults to "production".