2016-06-29 4 views
1

Я использую следующий deploy.rb:Capistrano 3 не перезагружается мои рельсы приложение после развертывания

# config valid only for current version of Capistrano 
lock '3.4.0' 
set :application, '*****' 
set :rails_env, 'production' 
set :repo_url, '[email protected]*******.***:/srv/outils/repos/*****' 
set :scm, :git 

namespace :deploy do 

    after :restart, :clear_cache do 
    on roles(:web), in: :groups, limit: 3, wait: 10 do 
     # Here we can do anything such as: 
     # within release_path do 
     # execute :rake, 'cache:clear' 
     # end 
    end 
    end 
    #after 'deploy:publishing', 'deploy:restart' 
end 
after 'deploy:publishing', 'deploy:restart' 

Это правильно развернуть приложение, но не перезапустить его. Что я должен изменить, чтобы перезапустить его? При перезагрузке сообщения нет, ошибки или нет.

+1

С какого сервера вы используете? – kirrmann

ответ

0

В Capistrano 3 задача restart доступна и будет вызываться, но она пуста. См исходный код Capistrano в capistrano/lib/capistrano/tasks/deploy.rake для кода:

[...] 

    task :restart 
    task :failed 

end 

Если вы хотите restart задача сделать что-то, вы можете изменить поведение по умолчанию для restart, добавив этот код в ваш deploy.rb:

namespace :deploy do 
    task :restart do 
    invoke rake-restart-something-task 
    end 
end 

Где rake-restart-something-task может быть чем-то вроде deploy:service:restart_apache или какой-либо другой задачей, которую вы определили в файле capistrano rake.

Смежные вопросы