如何通过任务在 YAML 文件中设置 YAML 变量的新值,后续任务将使用 powershell 显示新值?(两个任务都在同一个工作中)
我正在尝试使用下面的代码,但它不起作用。即使第一个任务为该 YAML 变量设置了新值,第二个/后续任务仍会获得初始值
stages:
- stage: tst
displayName: tst_stage
jobs:
- deployment:
displayName: 'test 1'
environment: 'test 1'
variables:
- name: someName
value: "someValue"
第一个将设置/更新变量值的任务:
- task: PowerShell@2
name: "task1"
displayName: this is task1
inputs:
targetType: 'inline'
script: |
$newValue = "ThisIsNewValue"
echo "##vso[task.setvariable variable=someName;isOutput=true]$newValue"
第二个任务将显示具有新值的变量:
- task: PowerShell@2
name: "task2"
displayName: this is task2
inputs:
targetType: 'inline'
script: |
echo "the new value of the variable is : $(someName)"
现在任务 2 的预期输出应该是:
the new value of the variable is : ThisIsNewValue
但由于某种原因,我得到的实际输出是初始值:
the new value of the variable is : someValue