【问题标题】:How to make prebuild script error with only error message in error detail如何在错误详细信息中仅使用错误消息使预构建脚本错误
【发布时间】:2015-06-27 07:07:57
【问题描述】:

所以这是我的问题。我在 TFS2013 中有一个预构建脚本,它通过 gulp 命令运行 JSHint。如果有任何警告,我想使脚本错误,并且我可以正常工作,但是 TFS 详细信息中的错误比我预期的要多得多。

在我的 powershell 脚本中,我这样做:

 Write-Error "$count files have JSHint warnings"

但这是 TFS 中的错误详细信息:

是否有任何方法可以使构建部分成功/失败,并产生不包含所有这些额外内容的错误详细信息? (可以看到第二个错误其实是powershell脚本的错误。)

【问题讨论】:

  • 不要使用Write-Error 或告诉它做除-ErrorAction 退出以外的其他事情?
  • -ErrorAction Continue 仍然会将所有额外数据添加到错误中。从 Write-Error 或抛出 [System.Exception] 中我还有什么其他选择。 Throw 还会放入一堆额外的数据,而不仅仅是我要显示的错误消息。
  • 只写输出退出?
  • 这不会使构建部分成功,这正是我所追求的。我在每次签入时都会运行此 JSHint 检查,以便团队意识到有人签入了可能存在错误的 JavaScript。

标签: powershell tfs tfsbuild


【解决方案1】:

我想通了!

$Host.UI.WriteErrorLine("$count files have JSHint warnings")

这会在 TFS 构建详细信息错误列表中写入一行,而不包含任何引发或写入错误注入的额外详细信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多