deploy.rb 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. default_run_options[:pty] = true
  2. set :application, "huginn"
  3. set :deploy_to, "/home/you/app"
  4. set :user, "you"
  5. set :use_sudo, false
  6. set :scm, :git
  7. set :rails_env, 'production'
  8. set :repository, "git@github.com:you/huginn-private.git"
  9. set :branch, "master"
  10. set :deploy_via, :remote_cache
  11. set :keep_releases, 5
  12. set :bundle_without, [:development]
  13. set :unicorn_pid, "#{shared_path}/pids/unicorn.pid"
  14. server "yourdomain.com", :app, :delayed_job, :web, :db, :primary => true
  15. set :delayed_job_server_role, :delayed_job
  16. set :sync_backups, 3
  17. before 'deploy:restart', 'deploy:migrate'
  18. after 'deploy', 'deploy:cleanup'
  19. set :bundle_without, [:development, :test]
  20. after 'deploy:stop', 'delayed_job:stop'
  21. after 'deploy:start', 'delayed_job:start'
  22. after 'deploy:restart', 'delayed_job:restart'
  23. after 'deploy:update_code', 'deploy:symlink_env_config'
  24. namespace :deploy do
  25. desc 'Link the environment file from shared/config/.env into the new deploy directory'
  26. task :symlink_env_config, :roles => :app do
  27. run <<-CMD
  28. cd #{latest_release} && ln -nfs #{shared_path}/config/.env #{latest_release}/.env
  29. CMD
  30. end
  31. end
  32. # If you want to use command line options, for example to start multiple workers,
  33. # define a Capistrano variable delayed_job_args:
  34. #
  35. # set :delayed_job_args, "-n 2"
  36. # If you want to use rvm on your server and have it maintained by Capistrano, uncomment these lines:
  37. # set :rvm_ruby_string, '1.9.3-p286@huginn'
  38. # set :rvm_type, :user
  39. # before 'deploy', 'rvm:install_rvm'
  40. # before 'deploy', 'rvm:install_ruby'
  41. # require "rvm/capistrano"
  42. # Load Capistrano additions
  43. Dir[File.expand_path("../../lib/capistrano/*.rb", __FILE__)].each{|f| load f }
  44. require "bundler/capistrano"
  45. require "capistrano-unicorn"
  46. require "delayed/recipes"
  47. load 'deploy/assets'