我的 yml 中有以下任务,但是当我尝试将 $(setOutput.myOutputJobVar) 的值存储在 powershell azure devops yml 中的某个变量中时,它不起作用,并且说术语“true”不被识别为 cmdlet、函数等等
有什么想法吗?
jobs:
- job: A
steps:
- powershell: |
Write-Host "##vso[task.setvariable variable=myOutputJobVar;isoutput=true]this is the same job too"
name: setOutput
- powershell: |
Write-Host $(setOutput.myOutputJobVar)
我想要一些东西
$a = $(setOutput.myOutputJobVar)
if ($a -eq 'true') { $var = "Hello" } else { "" }
Azure DevOps 管道中的变量始终存储为字符串,不存在布尔值的概念。
就 powershell 而言,您可以在变量引用之前添加另一个
$
将其转换为布尔值,如下所示:
$a = $$(setOutput.myOutputJobVar)