mirror of
https://github.com/ENSL/ensl.org.git
synced 2024-12-26 20:41:01 +00:00
960aab7aca
Fix rbenv not being able to export to upstart via foreman
61 lines
No EOL
1.6 KiB
Ruby
61 lines
No EOL
1.6 KiB
Ruby
lock '3.1.0'
|
|
|
|
set :application, 'ensl'
|
|
set :deploy_user, 'deploy'
|
|
set :pty, true
|
|
|
|
set :scm, :git
|
|
set :repo_url, 'git@github.com:ENSL/ensl.org.git'
|
|
set :keep_releases, 10
|
|
|
|
set :rbenv_type, :user
|
|
set :rbenv_ruby, '2.1.1'
|
|
set :rbenv_sudo, "sudo /home/#{fetch(:deploy_user)}/.rbenv/bin/rbenv sudo"
|
|
|
|
set :linked_files, %w{.env}
|
|
set :linked_dirs, %w{bin log tmp/pids tmp/cache tmp/sockets vendor/bundle
|
|
public/system public/local public/uploads}
|
|
|
|
set :normalize_asset_timestamps, %{public/images public/javascripts public/stylesheets}
|
|
|
|
namespace :deploy do
|
|
desc 'Restart application'
|
|
task :restart do
|
|
invoke 'foreman:export'
|
|
invoke 'foreman:restart'
|
|
end
|
|
|
|
after :publishing, :restart
|
|
end
|
|
|
|
namespace :foreman do
|
|
desc "Export the Procfile to Ubuntu's upstart scripts"
|
|
task :export do
|
|
on roles(:app) do |host|
|
|
within release_path do
|
|
execute "#{fetch(:rbenv_sudo)} bundle exec foreman export upstart /etc/init -a #{fetch(:application)} -u #{fetch(:deploy_user)} -l #{fetch(:deploy_to)}/shared/log"
|
|
end
|
|
end
|
|
end
|
|
|
|
desc "Start the application services"
|
|
task :start do
|
|
on roles(:app) do |host|
|
|
execute "sudo service #{fetch(:application)} start"
|
|
end
|
|
end
|
|
|
|
desc "Stop the application services"
|
|
task :stop do
|
|
on roles(:app) do |host|
|
|
execute "sudo service #{fetch(:application)} stop"
|
|
end
|
|
end
|
|
|
|
desc "Restart the application services"
|
|
task :restart do
|
|
on roles(:app) do |host|
|
|
execute "sudo service #{fetch(:application)} start || #{sudo} service #{fetch(:application)} restart"
|
|
end
|
|
end
|
|
end |