Skip to content

Instantly share code, notes, and snippets.

@valachi
Created April 25, 2013 10:11
Show Gist options
  • Save valachi/5458789 to your computer and use it in GitHub Desktop.
Save valachi/5458789 to your computer and use it in GitHub Desktop.
require 'yaml'
require 'fileutils'
require 'bundler/capistrano'
set :user, 'root'
set :domain, 'greenerequity.com'
set :applicationdir, "/var/rails/#{domain}"
set :scm, 'git'
set :repository, "[email protected]:OBSLabs/greenerequity.git"
set :git_shallow_clone, 1
set :scm_verbose, true
ssh_options[:forward_agent] = true
# roles (servers)
role :web, domain
role :app, domain
role :db, domain, :primary => true
set :rake, "/usr/local/rvm/bin/rake"
# deploy config
set :deploy_to, applicationdir
set :deploy_via, :export
# additional settings
default_run_options[:pty] = true # Forgo errors when deploying from windows
ssh_options[:forward_agent] = true
#ssh_options[:keys] = %w(/home/user/.ssh/id_rsa) # If you are using ssh_keysset :chmod755, "app config db lib public vendor script script/* public/disp*"set :use_sudo, false
# Passenger
namespace :deploy do
task :start do ; end
task :stop do ; end
task :restart, :roles => :app, :except => { :no_release => true } do
run "#{try_sudo} touch #{File.join(current_path,'tmp','restart.txt')}"
end
end
after "deploy", "refresh_sitemaps"
#after "deploy", "delayed_jobs:restart"
task :refresh_sitemaps do
run "cd #{latest_release} && RAILS_ENV=#{rails_env} rake sitemap:refresh"
end
namespace :delayed_jobs do
[:start, :stop].each do |t|
desc "#{t.to_s} delayed jobs"
task t do
run "cd #{current_path}; RAILS_ENV=production /usr/local/rvm/gems/ruby-1.9.3-p125/bin exec script/delayed_job #{t.to_s}"
end
end
task :restart do
delayed_jobs.stop
delayed_jobs.start
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment