Guest User

Untitled

a guest
Apr 19th, 2018
255
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.02 KB | None | 0 0
  1. require 'mongrel_cluster/recipes'
  2.  
  3. set :application, "glitchee"
  4. set :repository, "git@github.com:pjjw/glitchee.git"
  5. set :scm, :git
  6. set :deploy_to, "/home/klang/rails/#{application}"
  7. set :deploy_via, :remote_cache
  8. set :branch, "origin/master"
  9. set :user, "klang"
  10. set :use_sudo, nil
  11.  
  12. #mysql.
  13. set :mysql_user, "magic"
  14. set :mysql_password, "whistle"
  15. set :mysql_port, "3306"
  16.  
  17. # mongrels.
  18. set :mongrel_size, "2"
  19. set :mongrel_conf, "#{deploy_to}/#{shared_dir}/config/mongrel_cluster.yml"
  20.  
  21. role :app, "ham.ojnk.org"
  22. role :web, "ham.ojnk.org"
  23. role :db, "ham.ojnk.org", :primary => true
  24.  
  25. namespace :deploy do
  26. task :restart, :roles => :app do
  27. run "cd #{release_path} && mongrel_rails cluster::restart"
  28. end
  29.  
  30. desc "Create database.yml in shared/config"
  31. task :after_setup do
  32. database_configuration = <<-EOF
  33. login: &login
  34. adapter: mysql
  35. host: localhost
  36. port: #{mysql_port}
  37. username: #{mysql_user}
  38. password: #{mysql_password}
  39.  
  40. development:
  41. database: "#{application}_development"
  42. <<: *login
  43.  
  44. test:
  45. database: "#{application}_test"
  46. <<: *login
  47.  
  48. production:
  49. database: "#{application}_production"
  50. <<: *login
  51. EOF
  52. mongrel_cluster_configuration = <<-EOF
  53. ---
  54. cwd: #{current_path}
  55. log_file: log/mongrel.log
  56. port: "#{mongrel_port}"
  57. environment: production
  58. address: 127.0.0.1
  59. pid_file: log/mongrel.pid
  60. servers: #{mongrel_size}
  61. EOF
  62.  
  63. run "mkdir -p #{deploy_to}/#{shared_dir}/config"
  64. put database_configuration, "#{deploy_to}/#{shared_dir}/config/database.yml"
  65. put mongrel_cluster_configuration, "#{deploy_to}/#{shared_dir}/config/mongrel_cluster.yml"
  66. end
  67.  
  68. desc "Link in the production database.yml"
  69. task :after_update_code do
  70. run "ln -nfs #{deploy_to}/#{shared_dir}/config/database.yml #{release_path}/config/database.yml"
  71. run "ln -nfs #{deploy_to}/#{shared_dir}/config/mongrel_cluster.yml #{release_path}/config/mongrel_cluster.yml"
  72. run "cp -f #{release_path}/config/environment.rb.example #{release_path}/config/environment.rb"
  73. end
  74. end
Add Comment
Please, Sign In to add comment