Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace :config do
- task :setup do
- ask(:db_env, 'db_env')
- ask(:db_user, 'db_user')
- ask(:db_pass, 'db_pass')
- ask(:db_name, 'db_name')
- ask(:db_host, 'db_host')
- setup_config = <<-EOF
- #{fetch(:db_env)}:
- adapter: postgresql
- database: #{fetch(:db_name)}
- username: #{fetch(:db_user)}
- password: #{fetch(:db_pass)}
- host: #{fetch(:db_host)}
- EOF
- on roles(:app) do
- execute "mkdir -p #{shared_path}/config"
- upload! StringIO.new(setup_config), "#{shared_path}/config/database.yml"
- end
- end
- end
- namespace :config do
- task :setup do
- ask(:smtp_user, 'smtp_user')
- ask(:smtp_password, 'smtp_password')
- setup_config = <<-EOF
- user_name: #{fetch(:smtp_user)}
- password: #{fetch(:smtp_password)}
- EOF
- on roles(:app) do
- execute "mkdir -p #{shared_path}/config"
- upload! StringIO.new(setup_config), "#{shared_path}/config/mailer_config.yml"
- end
- end
- end
- namespace :config do
- task :setup do
- vhost_config = <<-EOF
- server {
- listen 80;
- server_name fetch#(:application).hostname;
- passenger_enabled on;
- root #{deploy_to}/current/public;
- rails_env #{fetch(:db_env)};
- client_max_body_size 20M;
- gzip on;
- location ~ ^/assets/ {
- root #{deploy_to}/current/public;
- expires max;
- add_header Cache-Control public;
- add_header ETag "";
- break;
- }
- }
- EOF
- on roles(:app) do
- execute "sudo mkdir -p /etc/nginx/sites-available"
- upload! StringIO.new(vhost_config), "/tmp/vhost_config"
- execute "sudo mv /tmp/vhost_config /etc/nginx/sites-available/fetch#(:application)"
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement