You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure DevOps Pipeline中用PowerShell获取触发运行的Shelveset编号

在Azure DevOps流水线中通过PowerShell获取触发运行的Shelveset编号(TFS仓库)

针对TFS仓库触发的Azure DevOps流水线,若流水线由Shelveset触发,可直接通过Azure DevOps预定义的环境变量获取Shelveset编号,具体方法如下:

核心方法:读取预定义环境变量

Azure DevOps为Shelveset触发的流水线提供了两个专属预定义变量:

  • BUILD_SOURCESHELVESETNAME:存储Shelveset的名称(即你需要的编号)
  • BUILD_SOURCESHELVESETID:存储Shelveset的唯一标识ID

PowerShell代码示例

在流水线的PowerShell任务中,直接读取这些环境变量即可:

# 获取Shelveset编号(名称)
$shelvesetNumber = $env:BUILD_SOURCESHELVESETNAME
Write-Host "触发本次流水线的Shelveset编号:$shelvesetNumber"

# 可选:获取Shelveset的唯一ID
$shelvesetId = $env:BUILD_SOURCESHELVESETID
Write-Host "Shelveset唯一ID:$shelvesetId"

判空处理(推荐)

若流水线存在多种触发方式,建议先判断变量是否存在,避免空值报错:

if (-not [string]::IsNullOrEmpty($env:BUILD_SOURCESHELVESETNAME)) {
    Write-Host "触发本次流水线的Shelveset编号:$($env:BUILD_SOURCESHELVESETNAME)"
} else {
    Write-Host "本次流水线并非由Shelveset触发"
}

内容的提问来源于stack exchange,提问作者prashant

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 18:12:05