Rake(Ruby)在构建结束时捕获错误

时间:2009-10-15 13:15:42

标签: ruby rake

我正在使用Ruby和Rake为.Net项目做我们的构建。

我调用一些命令行工具,例如NCover来检查覆盖范围是否足够高。当NCover返回并退出(失败)代码时,Rake退出会立即停止。

是否有一个钩子,比如on_exit,我可以使用。我基本上想要以漂亮的红色书写输出“Build FAILED”,如果可能的话,它会失败的步骤,甚至更好的消息为什么。只是这样对开发者来说更​​清楚一点。

在NAnt中有类似的东西,它非常方便。想知道Rake / Ruby是否有类似的东西。

任何人都有这方面的经验吗?

干杯。

2 个答案:

答案 0 :(得分:3)

Ruby有at_exit。您可以像这样使用它:

at_exit do
   puts "this gets printed before the script finishes"
end

答案 1 :(得分:1)

也许您可以检查工具返回的错误,如下所示:

sh %{NCover file} do |ok, res|
  if ! ok
    raise "Build FAILED in NCover"
  end
end