2017-04-16 13:52:18 +03:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2021-01-18 04:10:23 +02:00
|
|
|
lock '3.15.0'
|
2017-04-16 13:52:18 +03:00
|
|
|
|
2017-04-16 05:01:27 +03:00
|
|
|
set :repo_url, ENV.fetch('REPO', 'https://github.com/tootsuite/mastodon.git')
|
|
|
|
set :branch, ENV.fetch('BRANCH', 'master')
|
2017-01-30 21:03:17 +02:00
|
|
|
|
|
|
|
set :application, 'mastodon'
|
|
|
|
set :rbenv_type, :user
|
|
|
|
set :rbenv_ruby, File.read('.ruby-version').strip
|
|
|
|
set :migration_role, :app
|
|
|
|
|
2017-04-19 15:28:23 +03:00
|
|
|
append :linked_files, '.env.production', 'public/robots.txt'
|
2017-01-30 21:03:17 +02:00
|
|
|
append :linked_dirs, 'vendor/bundle', 'node_modules', 'public/system'
|
2020-05-10 11:19:49 +03:00
|
|
|
|
|
|
|
namespace :systemd do
|
|
|
|
%i[sidekiq streaming web].each do |service|
|
|
|
|
%i[reload restart status].each do |action|
|
|
|
|
desc "Perform a #{action} on #{service} service"
|
|
|
|
task "#{service}:#{action}".to_sym do
|
|
|
|
on roles(:app) do
|
|
|
|
# runs e.g. "sudo restart mastodon-sidekiq.service"
|
|
|
|
sudo :systemctl, action, "#{fetch(:application)}-#{service}.service"
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
after 'deploy:publishing', 'systemd:web:reload'
|
|
|
|
after 'deploy:publishing', 'systemd:sidekiq:restart'
|
|
|
|
after 'deploy:publishing', 'systemd:streaming:restart'
|