我们有一个VNext构建定义,在Variables选项卡上我们添加了一些自定义变量.在其中一个变量值中,我们引用另一个变量,即
FileDescription = $(Build.DefinitionName)
Run Code Online (Sandbox Code Playgroud)
但是,当我们在PowerShell脚本中引用它时,FILEDESCRIPTION环境变量仍然存在,但该值未展开(它包含" $(Build.DefinitionName)")并被视为字符串文字.
该文档似乎表明我们应该能够引用它并且它将在运行时被替换 - https://msdn.microsoft.com/en-us/library/vs/alm/build/scripts/variables
有没有办法让TFS在运行时自动扩展变量?
在 vNext 构建中,似乎没有到处扩展变量。
例如,在 MSBuild-Arguments 中,/p:OUTPUT="$(FileDescription)"扩展为 /p:OUTPUT="(构建定义的名称)" ,但在 powershell 中它只会 "$(Build.DefinitionName)"直接打印。
尝试使用下面的解决方法:尝试使用相应的生成的环境变量(例如$env:Build.DefinitionName)。
$FileDescription = $env:Build.DefinitionName
Run Code Online (Sandbox Code Playgroud)
注意:如果需要更改路径,则必须更改 PS 脚本而不是构建变量。
| 归档时间: |
|
| 查看次数: |
794 次 |
| 最近记录: |