如何讓我的環境變數從我的第一階段到我的第二階段?
問題 -> 我從我的回聲結果中得到一個空的 "" 值。
azure-pipeline.yml
trigger:
branches:
include:
- main
paths:
include:
- infra/*
- .pipelines/*
variables:
vmImageName: 'ubuntu-latest'
root: $(System.DefaultWorkingDirectory)
stages:
- stage: TakePITR
dependsOn: []
variables:
env: poc
jobs:
- job: GetPitrTime
steps:
- task: PowerShell@2
inputs:
targetType: 'inline'
script: |
$iso8601_time = Get-Date -Format "o"
echo "##vso[task.setvariable variable=pitr_time;isOutput=True]$iso8601_time"
name: PitrVar
displayName: "Get point-in-time before second stage"
- stage: TestOutputEnvVar
dependsOn: TakePITR
variables:
env: poc
PITR: $[ stageDependencies.TakePITR.GetPitrTime.outputs['PitrVar.pitr_time']]
jobs:
- job:
steps:
- script: |
echo $pitr_time
echo $PITR
displayName: 'echo value'
我不明白我在這里做錯了什么。
這是我的管道的結果:

uj5u.com熱心網友回復:
你有縮進問題:
- task: PowerShell@2
inputs:
targetType: 'inline'
script: |
$iso8601_time = Get-Date -Format "o"
echo "##vso[task.setvariable variable=pitr_time;isOutput=true]$iso8601_time"
name: PitrVar
displayName: "Get point-in-time before second stage"
Name 和 displayName 應該與 input 處于同一級別,然后:

完整代碼在這里
trigger:
branches:
include:
- main
paths:
include:
- infra/*
- .pipelines/*
variables:
vmImageName: 'ubuntu-latest'
root: $(System.DefaultWorkingDirectory)
stages:
- stage: TakePITR
dependsOn: []
variables:
env: poc
jobs:
- job: GetPitrTime
steps:
- task: PowerShell@2
name: PitrVar
displayName: "Get point-in-time before second stage"
inputs:
targetType: 'inline'
script: |
$iso8601_time = Get-Date -Format "o"
echo "##vso[task.setvariable variable=pitr_time;isOutput=true]$iso8601_time"
- stage: TestOutputEnvVar
dependsOn: TakePITR
variables:
env: poc
PITR: $[ stageDependencies.TakePITR.GetPitrTime.outputs['PitrVar.pitr_time']]
jobs:
- job:
steps:
- script: |
echo $pitr_time
echo $PITR
displayName: 'echo value'
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/362443.html
標籤:天蓝色 电源外壳 azure-devops 天蓝色管道
