我有以下capistrano 3任务:
desc 'Add root scheduled tasks'
task :root_schedules do
on roles(:all) do
within release_path do
execute :sudo, :bundle, 'exec whenever -w config/root_schedule.rb -u root'
end
end
end
我需要使用sudo权限运行此任务,因为我需要使用更高权限运行计划任务。这些是后端计划的服务器任务。问题是,每次运行此命令,我都会得到以下信息:
DEBUG [46d3800c] [sudo] password for [user]
输入密码并按Enter后,它永远不会完成任何操作。完全没有回应。那里有任何答案吗?
答案 0 :(得分:13)
我刚刚为此创建了一个gem:sshkit-sudo
gem 'sshkit-sudo'
添加到Gemfile require 'sshkit/sudo'
添加到Capfile 现在您可以在Capistrano 3任务中使用sudo
命令。
答案 1 :(得分:0)