繁体   English   中英

Azure DevOps 发布管道 - 如何使用 Azure Powershell 在管道中的变量中设置和传递值

[英]Azure DevOps Release Pipeline - How to set and pass values in variables in pipeline with Azure Powershell

使用 Azure 发布管道,在使用 PowerShell 脚本的任务中,我可以设置变量值并使用命令传递给下一个任务

Write-Host '##vso[task.setvariable variable=varResourceExists;isOutput=true;something'

但是,当我将此类似命令放入使用 Azure PowerShell 的任务中时,不再允许此命令,该任务会产生警告:

2019-10-22T00:23:14.3080614Z ##[warning]'##vso[task.setvariable variable=varResourceExists;isOutput=true;something' 包含日志记录命令关键字'##vso',但它不是合法命令。 请查看接受的命令列表: https://go.microsoft.com/fwlink/?LinkId=817296

因此,我的任务无法设置变量 varResourceExists。 我还尝试了一个常规的 PowerShell 设置值

$varResourceExists = 'something'; # this also does not work

有没有办法可以在 Azure Powershell 脚本中设置这个值,以便下一个任务可以引用它?

##vso[task.setvariable variable=varResourceExists;isOutput=true;something语法不正确。 你错过了一个结束]

应该是##vso[task.setvariable variable=varResourceExists;isOutput=true;]something

这是我解决主题的方法。 在管道 Azure PowerShell 任务中,我可以有诸如Write-Host '##vso[task.setvariable variable=varResourceExists;isOutput=true;]False';

在 Output 变量选项中,我设置了一个参考名称“step1”: Output 变量然后在下一步中,我可以使用自定义条件进行条件检查:自定义条件

我还可以在我的代码中引用变量,例如Write-Host "The step1.varResourceExists says: $(step1.varResourceExists)";

暂无
暂无

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

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