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

在Azure DevOps的Build/Release管道运行时能否获取其所在文件夹路径?

解决方案

是可以在管道运行时获取到所属的文件夹路径的,分两种场景调用对应预定义变量即可:

  • YAML构建/发布管道、经典构建管道:调用变量 Build.DefinitionPath,该变量会返回管道的完整层级路径,例如存放在Framework文件夹下的管道,返回值为\Framework
  • 经典发布管道:调用变量 Release.DefinitionPath 即可获取路径

常见使用示例

1. 任务级条件执行

如果要仅给Framework文件夹下的管道执行特定任务,直接在任务中添加condition判断即可:

- task: PowerShell@2
  inputs:
    targetType: 'inline'
    script: |
      Write-Host "仅Framework文件夹下的管道会执行该任务"
  condition: contains(variables['Build.DefinitionPath'], 'Framework')

2. 脚本中调用获取路径

如果需要在脚本逻辑中使用该路径,直接引用变量即可:

PowerShell脚本示例:

$pipelineFolderPath = "$(Build.DefinitionPath)"
Write-Host "当前管道存放路径为:$pipelineFolderPath"

Bash脚本示例:

PIPELINE_FOLDER_PATH=$(Build.DefinitionPath)
echo "当前管道存放路径为:$PIPELINE_FOLDER_PATH"

注意:路径的返回值开头会自带反斜杠,存放在根目录下的管道返回值为\,写判断条件时可根据实际需求调整匹配规则。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 21:54:00