gpt4 book ai didi

ruby - 如何明确地使 ruby​​ rake 中的任务失败?

转载 作者:数据小太阳 更新时间:2023-10-29 06:21:49 24 4
gpt4 key购买 nike

假设我有一个这样的 rakefile:

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's OK"
end

现在,如果我不放置任何内容来代替 ???,即使外部工具无法生成文件,我也会收到 OK 消息。什么是通知 rake 的正确方法,'file1' 任务失败了,它应该中止(希望呈现一个有意义的消息——比如哪个任务失败了)——我现在唯一能想到的就是在那里引发异常,但是只是看起来不对。

P.S 该工具总是返回 0 作为退出代码。

最佳答案

使用 raisefail方法就像对任何其他 Ruby 脚本一样( failraise 的别名)。此方法将字符串或异常作为参数,用作脚本终止时显示的错误消息。这也会导致脚本将值 1 返回给调用 shell。已记录 here和其他地方。

关于ruby - 如何明确地使 ruby​​ rake 中的任务失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3753584/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com