VSTS嵌套变量

时间:2017-10-13 19:41:16

标签: azure-devops azure-pipelines azure-pipelines-build-task

我试图完成一个级联变量,当设置一个设计时变量时,它会级联到其他变量。这可能吗?我试过点符号,我试过没有点符号,我已经尝试过这个任务:

Dot Notation Variables

Not Dot Notation

Inside Task

我也试过这个任务插件,但是我的代理人在2.0上,而且任务没有运行。

Variable Toolbox Task

有什么想法吗?

答案:

您可以在环境级别覆盖这些变量。我将不得不手动在脚本中展开这些变量,然后将它们设置为此脚本中的已解析值。

2 个答案:

答案 0 :(得分:1)

不要为每个环境设置不同的变量,而是使用相同的变量,但在环境级别覆盖它。

答案 1 :(得分:1)

您可以在构建期间通过Logging Command设置变量值:

  1. 添加PowerShell任务
  2. 脚本:(如果变量包含_,则需要使用.,例如Server.Dev => Server_Dev)

    $v= [Environment]::GetEnvironmentVariable("Server_$env:Environment")
    Write-Host ("##vso[task.setvariable variable=Server;]$v")
    
    1. 然后,以下任务可以使用具有相应值的服务器变量