内联脚本的 Yaml 参数

问题描述 投票:0回答:2

您好,我认为我面临的问题可能是初学者的疑问,但它是:

我有一个阶段 yaml,由我的主 yaml 调用。 Stage yaml 有一个我想在内联脚本中使用的参数。

这是 yaml(骨架)

parameters:
- name: myParam
  type: string

stages:
- stage: 
  dependsOn:   
  displayName: 
  pool:
    name: 
  jobs:
  - deployment: 
    displayName: 
    pool:
      name: 
    environment: 
      name: 
    strategy:
      runOnce:
        deploy:
          steps:
          - template: 
            parameters:
              azureServiceConnection: 
              subscriptionId: 

          - task: AzureCLI@2
            displayName: ''              
            inputs:
              workingDirectory: ''
              azureSubscription: 
              scriptType: 'pscore'
              scriptLocation: inlineScript
              inlineScript: |
                
                Write-Host  //I want to print it here or assign to a variable like next line
                $paramValue = //here
                

我如何在这里使用 myParam?

yaml azure-pipelines azure-cli azure-pipelines-yaml inline-scripting
2个回答
1
投票

指定一个

env
块并将该值引用为环境变量。

- task: AzureCLI@2
  inputs: 
    inlineScript: |
      Write-Host $env:FOO
  env:
    FOO: ${{ parameters.myParameter }}

-1
投票

这是一个示例,其中包含用于访问 .yml 文件中参数值的正确语法:

parameters:
- name: myParam
  type: string
  ...
       scriptType: 'pscore'
       scriptLocation: inlineScript
       inlineScript: |
          Write-Host "Value of myParam is ${{ parameters.myParam }}"  
          $paramValue = "${{ parameters.myParam }}"

这里的关键是使用语法来访问 .yml 文件中该参数的值

$ {{ paramters.vaiableName }}

© www.soinside.com 2019 - 2024. All rights reserved.