从“ Azure PowerShell任务”开始,只需几步就可以创建CD。
在Azure PowerShell任务中,执行PowerShell脚本文件并在变量中设置一个值。 在脚本的最后,我为变量设置了一个值–
echo "##vso[task.setvariable variable=myvariable;isSecret=false;isOutput=true;]myvalue"
myvariable 是变量
myvalue 是值。
基于“ myvariable”的值;下游任务将被执行或跳过。在下游任务(任务-Azure创建或更新资源)中提到“自定义条件” –
and(succeeded(), eq(variables[‘myvariable’], ‘myvalue’))
但是,它总是跳过这一步;尽管传递了正确的值。这是我的发布任务代码段-
我该如何克服?
答案 0 :(得分:2)
尝试
Write-Host "##vso[task.setvariable variable=myvariable;isSecret=false;isOutput=true;]myvalue"
然后
and(succeeded(), eq(variables['myvariable'], 'myvalue'))
在第二部分中,您粘贴的代码具有不正确的引号类型,您使用的是弯引号'而不是普通的直接引号''
如果从Word或Outlook复制/粘贴,通常会出现错误的引号。我确定他们有一个合适的印刷术术语。
答案 1 :(得分:1)
感谢大家的宝贵意见。解析度 - PowerShell脚本-
$myvalue="hello"
Write-Host "##vso[task.setvariable variable=myvariable]$myvalue"
在变量($ myvalue)中分配值(“ hello”),然后在“ Write-Host”中进行设置。直接价值对我没有用。 现在,如@Alex KeySmith所述,我们可以在“自定义条件”中的下游任务中使用/验证“ myvariable”值。
and(succeeded(), eq(variables['myvariable'], 'hello'))
任务-
在“构建和发布”管道中工作。