【问题标题】:How to get output from Azure Devops Powershell YAML如何从 Azure Devops Powershell YAML 获取输出
【发布时间】:2019-09-01 05:20:24
【问题描述】:

我有一个 yaml 管道,使用任务 Azure Powershell Task https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/deploy/azure-powershell?view=azure-devops

脚本已经有任务输出如下:

$output = ConvertTo-Json -InputObject @{
    resourceName = "aseName"
    resourceGroupName = "ResourceGroupName"
} -Compress

Write-Output "##vso[task.setvariable variable=output;]$output"

在后续任务中,在同一个作业中。我需要将其用作 {output.resourceName}。通常,设计师可以按照我想要的方式将其取出。但是对于 YAML,我无法弄清楚。

任何指针?

【问题讨论】:

    标签: azure-devops azure-pipelines


    【解决方案1】:

    作为旁注,这可能会在将来为其他人节省一些时间。当您创建一个新阶段并希望引用您的变量时,您还应该在设置变量时添加“isOutput=true”:

    Write-Output "##vso[task.setvariable variable=output;isOutput=true]$output"
    

    当在 YAML 中引用 Output 变量时,这样调用变量:

    - stage: 
      displayName: someName
      variables: 
       output: $[stageDependencies.<stageName>.<jobName>.outputs['<stepname>.output']]
      jobs:
      - job: SomeName
        steps:
        - task: SomeTask
    

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 是的,我引用了它,但缺少的部分是我跳过了将字符串输出转换为 json。谢谢
      猜你喜欢
      • 2021-04-27
      • 1970-01-01
      • 2021-06-23
      • 2021-12-30
      • 2020-01-27
      • 2019-06-20
      • 2021-09-13
      • 2020-08-27
      • 2021-01-20
      相关资源
      最近更新 更多