Я пытаюсь создать задачу capistrano для настройки моего файла ротации журналов.
namespace :app do
task :setup_log_rotation,:roles => :app do
rotate_script = %Q{#{shared_path}/log/#{stage}.log {
daily
rotate #{ENV['days'] || 7}
size #{ENV['size'] || "5M"}
compress
create 640 #{user} #{ENV['group'] || user}
missingok
}}
put rotate_script, "#{shared_path}/logrotate_script"
"sudo cp #{shared_path}/logrotate_script /etc/logrotate.d/#{application}"
run "rm #{shared_path}/logrotate_script"
end
end
В самом верху моего файла deploy.rb у меня была следующая строка
set :use_sudo, false
Я полностью пропустил, что моя команда cp тихо терпела неудачу, и на моем терминале я думал, что все в порядке. Это не хорошо. Как мне написать код cp, чтобы по какой-то причине произошел сбой cpase (в этом случае команда sudo не выполнялась), тогда я должен получить отзыв о своем терминале.