Capistrano 3はパスワード入力が必要なsudoをサポートしていない訳ですが、不便なので、パスワードつきsudoするためのsshkit-sudoというgemを作ってみました。
このgemを入れ、Capfile内でrequire 'sshkit/sudo'すると、SSHKitにsudoコマンドが追加され、Capistrano 3のタスク内からsudoコマンドを呼び出すことができるようになります。
以下のように使います。
namespace :nginx do
desc 'Reload nginx'
task :reload do
on roles(:web), in: :sequence do
sudo :service, :nginx, :reload
end
end
end
github: sshkit-sudo
使い方: Capistrano 3でパスワード付きsudoを実行する方法