TFS build написать сообщение в резюме - PullRequest
0 голосов
/ 26 апреля 2019

Я хочу добавить сообщение (ссылку) в сводку сборки (также может быть новый раздел, не имеет значения):

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 Results;] ' успешно. Пожалуйста, справочную документацию (http://go.microsoft.com/fwlink/?LinkId=817296) Невозможно загрузить задачу файл вложения, местоположение файла вложения не указано или файл вложения не существует на диске

Как добавить текст / ссылку / href в сводку сборки? (powershell или другой метод?)

EDIT: Пожалуйста, смотрите редактировать ниже. Я запускаю этот скрипт из 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 ## [ошибка] Невозможно обработать команду «## вс [task.addattachment type = Distributedtask.Core.Summary; name = DotCover Results;] 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 Ответ

1 голос
/ 28 апреля 2019

«hellomessage» не может работать, потому что вы должны указать путь к файлу, а не просто строку.

При попытке сценария 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 существует на странице сводной информации о сборке.

Так что в вашем случае вы должны проверить путь к файлу и исправить его, после того, как загрузка будет работать (вы можете попробовать также указать жестко закодированный путь и проверить, работает ли он).

P.S - task.uploadsuammry - это короткая рука для task.addattachment type=Distributedtask.Core.Summary.

...