Скажем, у меня есть файл рейка:
file 'file1' => some_dependencies do
sh 'external tool I do not have control over, which sometimes fail to create the file'
???
end
task :default => 'file1' do
puts "everything OK"
end
Теперь, если я ничего не ставил вместо???, я получаю сообщение OK, даже если внешнему инструменту не удается создать файл. Каков надлежащий способ информирования грабли, что задача "file1" потерпела неудачу, и она должна прерваться (надеюсь, что она представляет значимое сообщение, например, какая неудачная задача) - единственное, о чем я могу думать сейчас, - это создать там исключение, но это просто не кажется правильным.
P.S Инструмент всегда возвращает 0 в качестве кода выхода.