Select VSTS 构建中队列时间的组合框值

Select Combobox value at Queue time in VSTS Build

我想将相同的基础结构(从 ARM 模板)部署到多个 Azure 订阅。

在我的努力中,我找不到在排队时覆盖 selected 订阅的可能性?例如使用像普通字段一样的变量 $(AzureSubscriptions).

tl;dr 如何在排队时 select 值之一而不需要编辑构建?

如果这是不可能的,你会建议什么好的解决方案?使用 AzCLI 脚本手动执行命令?

在构建排队期间无法更改订阅。

但是有一些解决方法供您参考:

选项 1:执行您提到的命令。

选项 2:使用自定义条件

您可以添加多个具有不同订阅的 Azure 资源组部署任务。并按自定义条件执行其中之一。

假设有两个订阅可用,您可以添加两个Azure资源组部署任务并select这两个订阅分开。

然后添加两个变量(例如var1var2),它们的值都是0:

为两个 Azure 资源组部署任务添加自定义条件:

  • 对于前两个 Azure 资源组部署任务(select订阅 1),添加自定义条件:

      and(succeeded(), eq(variables['var1'], '1'))
    
  • 对于第二个两个 Azure 资源组部署任务(selecting 订阅 2),添加自定义条件:

      and(succeeded(), eq(variables['var2'], '1'))
    

现在如果您准备为某个订阅执行 Azure 资源组部署任务,请将相关变量的值更改为 1。

比如你想select订阅1,那么把var1的值改成1(保持var2的值为0)。如果你想 select subscription2,那么将 var2 值更改为 1(保持 var1 值为 0)。