我是否需要在发行版中获得构建工件名称?我没有看到预定义的发布变量可以获取此信息。有没有办法获取这个?
答案 0 :(得分:1)
如果您要获取在构建过程中Artifact Name
任务中定义的Publish Build Artifacts
(默认为Drop
),则可以在PowerShell脚本下面运行,调用{ {3}}检索值并使用logging命令设置变量。之后,您可以在后续任务中使用该变量...
Agent Phase
中启用REST API 添加PowerShell任务以在脚本下运行
$url = "$($env:SYSTEM_TEAMFOUNDATIONCOLLECTIONURI)$env:SYSTEM_TEAMPROJECTID/_apis/build/builds/$env:BUILD_BUILDID/artifacts?api-version=4.1"
Write-Host "URL: $url"
$pipeline = Invoke-RestMethod -Uri $url -Headers @{
Authorization = "Bearer $env:SYSTEM_ACCESSTOKEN"
}
Write-Host "artifactName:" ($artifactName = $Pipeline.value.name)
#Set Variable $artifactName
Write-Host "##vso[task.setvariable variable=artifactName]$artifactName"
#Then you can use the variable $artifactName in the subsequent tasks...
答案 1 :(得分:0)
这是well-documented下的常规伪像变量和主要伪像变量。
主要工件名称为Build.DefinitionName
。