TFS build написать сообщение ссылку на отчет - PullRequest
0 голосов
/ 29 апреля 2019

Как добавить кликабельную ссылку в сводку сборки 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 голосов
/ 29 апреля 2019

Возможно, вам следует проверить этот SO-ответ: Как создать ссылку на локальный файл на веб-странице, запускаемой локально?

Возможно, проблема с URI файла . Где находится файл? Обратите внимание на часть об URI, где он делает предположение о хосте, если он не указан. Он появляется на удаленном компьютере, который выглядит как tfsbuilddev03. Если это хост, вы можете сделать его хост-частью URI, т.е. file:////tfsbuilddev03/Builds/tfsbuilddev03/Agent1/6/s/dotCover/dotcover.html

...