TFS构建写入消息链接以进行报告

时间:2019-04-29 17:01:39

标签: tfs tfsbuild

如何添加可单击的链接以显示TFS构建摘要?

enter image description here

Powershell代码:

function AddSummaryMessage{
    $file = Get-ChildItem $outputFolder -name "dotcover.html";
    if ($file){

        $linkPath = "file://///" + $outputFolder.replace("C:\", "").replace("\", "/") + "dotcover.html"
        $linkPath = "<a href="""+ $linkPath +""">view dotCover report</a>"
        LogMessage("File path: " + $linkPath)

        $linkPath | Out-File -FilePath ($outputFolder + "link.txt") -Append
        $file = Get-ChildItem $outputFolder -name "link.txt";
        LogMessage("link file: " + ($outputFolder + $file))
        $path = ($outputFolder + $file)
        Write-Host "##vso[task.addattachment type=Distributedtask.Core.Summary;name=DotCover Report;]$path"
    }
}

该文件确实存在并被创建。然后在我的link.txt中有以下文本:

<a href="file://///tfsbuilddev03/Builds/tfsbuilddev03/Agent1/6/s/dotCover/dotcover.html">view dotCover report</a>

但是,当我将鼠标悬停在它上面时,它指向其他地方: enter image description here

顺便说一句,将此字符串(从link.txt文件中)复制到浏览器,确实可以正确打开html文件:

file://///tfsbuilddev03/Builds/tfsbuilddev03/Agent1/6/s/dotCover/dotcover.html

1 个答案:

答案 0 :(得分:0)

也许您应该查看以下答案:How can I create a link to a local file on a locally-run web page?

您的File URI可能有问题。文件托管在哪里?请注意有关URI的部分,如果未指定,它将对主机进行假设。它出现在似乎是tfsbuilddev03的远程计算机上。如果是主机,则可以使其成为URI的主机部分,即file:////tfsbuilddev03/Builds/tfsbuilddev03/Agent1/6/s/dotCover/dotcover.html