VSTS: публикация артефактов сборки в удаленном хранилище TFVC - PullRequest
0 голосов
/ 30 октября 2018

Можно ли опубликовать выходные данные из конвейера сборки (артефакты) в сервисе команды Visual Studio в хранилище? Наше хранилище размещено в VSTS, и мы используем TFVC (управление версиями Team Foundation для хранения нашего кода).

Я использовал задачи копирования и публикации из коробки, но это не сработало.

Очень ценю ваш ответ!

1 Ответ

0 голосов
/ 31 октября 2018

Как сказал Даниэль, это считается плохой практикой , но если вы все еще хотите это сделать, вы можете сделать это с помощью сценария PowerShell:

Param(
[string]$tfvcRepoPath
)
$artifactsFolderPath = "$($env:Agent_BuildDirectory)\newCode"
$tempWorkspacePath =  "$($env:Agent_BuildDirectory)\tempWorkspace"

New-Item -Path $artifactsFolderPath-ItemType directory

Copy-Item -Path "$($env:Build_ArtifactStagingDirectory)/*" -Recurse -Destination $artifactsFolderPath

New-Item -Path $tempWorkspacePath -ItemType directory

cd $tempWorkspacePath 

$tfExe = "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\tf.exe"

& $tfExe workspace /collection:{TfsCollection} /new "TempWorkspace" /noprompt

& $tfExe workfold "$($tfvcRepoPath)" $tempWorkspacePath 

Copy-Item -Path "$($artifactsFolderPath)/*" -Recurse -Destination $tempWorkspacePath 

& $tfExe add * /recursive /noignore

& $tfExe checkin /recursive /comment:"artficats after build"

& $tfExe workspace /delete /collection:{TfsCollection} "Tempworkspace"

cd c:/
Remove-Item -Path $newCodeFolderPath -Force -Recurse
Remove-Item -Path $tempWorkspacePath -Force -Recurse

Измените $tfExe = "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\tf.exe" относительно вашей установленной версии Visual Studio (я использовал путь для VS 2017 Professional edition).

...