【发布时间】:2011-05-19 03:48:01
【问题描述】:
我在 Hudson 构建上运行了几个构建后操作。它们目前是 bash 脚本,如果我想让它们的 biuld 失败,我只返回一个非零值。有没有办法使从另一种脚本语言(例如 groovy)的构建失败?我是否只编写一个也返回非零的脚本?或者我需要一个特定的插件来启用它吗?
谢谢, 杰夫
【问题讨论】:
我在 Hudson 构建上运行了几个构建后操作。它们目前是 bash 脚本,如果我想让它们的 biuld 失败,我只返回一个非零值。有没有办法使从另一种脚本语言(例如 groovy)的构建失败?我是否只编写一个也返回非零的脚本?或者我需要一个特定的插件来启用它吗?
谢谢, 杰夫
【问题讨论】:
在 Groovy 脚本中以编程方式执行此操作的一种方法是:
throw new hudson.AbortException("Something was in my eye...")
【讨论】:
如果您的后期构建操作是标准构建步骤(如 shell 脚本)。以非零值退出该 shell 脚本就足够了。我不知道是否所有脚本语言都允许您返回非零返回值,然后它将成为脚本的返回值(如果您不调用 exit 或专门在脚本中的等效命令而不是最后执行的命令的返回值成为脚本的返回值)。
如果您在使用这种方法时遇到问题,始终可以选择使用 Log Parser Plugin 来使构建错误失败。
【讨论】:
Groovy Postbuild Plugin 似乎是您所需要的,并且有一个名为 buildFailure() 的方法将构建结果设置为 FAILURE。
【讨论】: