TFS构建写入消息以进行总结

时间:2019-04-26 19:39:59

标签: tfs msbuild azure-devops tfsbuild

我想在构建摘要中添加一条消息(链接)(也可以是一个新部分,并不重要):

enter image description here

基于此:https://blogs.objectsharp.com/post/2017/04/25/Writing-to-the-Build-Report-in-TFS-2015.aspx

我已经在Powershell脚本中添加了这一行:

Write-Host "##vso[task.addattachment type=Distributedtask.Core.Summary;name=DotCover Results;]" 

但是我收到一条错误消息:

  

无法处理命令'## vso [task.addattachment   type = Distributedtask.Core.Summary; name = DotCover结果;]'   成功。请参考文件   (http://go.microsoft.com/fwlink/?LinkId=817296)无法上传任务   附件文件,未指定附件文件位置,或   磁盘上不存在附件文件

如何在构建摘要中添加text / link / href? (PowerShell或其他方法?)

编辑: 请参阅下面的编辑。我在构建步骤中从PowerShell运行此脚本:

$path = $sourcesFolder + "file:///C:/Temp/dotCover-xunit.html"
Write-Host "##vso[task.addattachment type=Distributedtask.Core.Summary;name=DotCover Results;]$path"

编辑2 :(尝试输入简单文本)

function AddSummaryMessage{
	$filePath = "somestring"
	Write-Host "##vso[task.uplaodsummary]$filePath"
}

还尝试使用“ hellomessage”作为其中的字符串:

错误消息:

  

2019-04-27T01:49:01.1513980Z ## [错误]无法处理命令   '## vso [task.addattachment   type = Distributedtask.Core.Summary; name = DotCover结果;] hellomessage'   成功。请参考文件   (http://go.microsoft.com/fwlink/?LinkId=817296)   2019-04-27T01:49:01.1516289Z ## [错误]无法上传任务附件   文件,附件文件位置未指定或附件文件未指定   存在于磁盘上

enter image description here

编辑3:

function AddSummaryMessage{
	$file = Get-ChildItem $outputFolder -name "dotcover.html";
	if ($file){
		LogMessage("Found dotcover report file: " + ($outputFolder + $file))
		$path = ($outputFolder + $file)
		Write-Host "##vso[task.uplaodsummary]$path"
	}
}

OUTPUT:

9:27:01 AM  add summary message
9:27:01 AM  Found dotcover report file: C:\Builds\tfsbuilddev02\Agent1\110\s\dotCover\dotcover.html

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:1)

“问候消息”无法正常工作,因为您必须提供文件路径,而不仅仅是字符串。

尝试使用PowerShell脚本时,文件路径出现问题。

我不知道sourcesFolder的值,也不知道+ file ...是什么。

我试图以这种方式连接文件路径:

$filePath = $(Build.SourcesDirectory)\test.html
# Verify the path is correct:
Write-Host $filePath
# Output: D:\a\1\s\test.html

我以这种方式将文件上传到“摘要”页面:

Write-Host "##vso[task.uplaodsummary]$filePath"

上传成功,并且test.html存在于构建摘要页面中。

因此,在您的情况下,您必须检查文件路径并进行修复,上传后即可正常工作(您也可以尝试添加硬编码的路径并检查其是否有效)。

PS -task.uploadsuammrytask.addattachment type=Distributedtask.Core.Summary的简称。