繁体   English   中英

如何在 Azure Devops/VSTS 中的任务之间传递变量

[英]How can i pass a variable between tasks in Azure Devops/VSTS

对于任务 1,我有一个 CLI 任务,它只是获取子网名称和子网引用,如下所示

$subnetname1 = az network vnet subnet list --resource-group vnetrg01 --vnet-name vnet01 --query "[].name" -o tsv
$subnetref1 = az network vnet subnet list --resource-group vnetrg01 --vnet-name vnet01 --query "[].id" -o tsv

对于任务 2,我想部署一个 arm 模板,该模板将使用 Azure Devops 中的管道变量中的参数因此例如上面任务 1 中 $subnetref1 的结果需要填充子网引用的管道变量(设置为变量pipleine),然后将其传递给 arm 模板覆盖参数

似乎无法正常工作

您可以使用 Powershell 命令执行此操作,

在第一个 PowerShell 任务中,将变量设置为环境变量:

$subnetname1 =  az network vnet subnet list --resource-group vnetrg01 --vnet-name vnet01 --query "[].name" -o tsv 
Write-Host $subnetname1
Write-Host ("##vso[task.setvariable variable=subnetname1;]$subnetname1")

在第二个任务中以这种方式读取变量:

$subnetname1 =  $env:subnetname1
Write-Host $subnetname1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM