【问题标题】:Can I add more than one variable to an existing variable group in Azure DevOps?我可以向 Azure DevOps 中的现有变量组添加多个变量吗?
【发布时间】:2022-01-22 11:35:34
【问题描述】:

我有一个启动管道,其中一个任务正在使用 Azure CLI:az pipelines variable-group variable create。我的整个脚本如下所示:

steps:
  - bash: |
      az pipelines variable-group variable create \
        --group-id 113 \
        --name envName \
        --value ${{parameters.envName}} \
        --org $(System.CollectionUri) \
        --project $(System.TeamProject)
    displayName: 'Add variables to group'
    env:
      AZURE_DEVOPS_EXT_PAT: $(System.AccessToken)

运行此命令后,该变量现在存在于我的变量组中。但是,我想知道是否有一种方法可以一次添加多个变量?例如:

steps:
  - bash: |
      az pipelines variable-group variable create \
        --group-id 113 \
        --name location \ # First variable
        --value ${{parameters.location}} \
        --name envName \ # Second variable
        --value ${{parameters.envName}} \
        --org $(System.CollectionUri) \
        --project $(System.TeamProject)
    displayName: 'Add variables to group'
    env:
      AZURE_DEVOPS_EXT_PAT: $(System.AccessToken)

当我使用附加变量运行此脚本时,第一个变量被下一个变量覆盖。我正在研究创建一个循环,该循环将遍历我的所有参数,然后将其传递到我的脚本中。大致如下:

steps:
  ${{each parameter in parameters}}:
    - bash: |
        az pipelines variable-group variable create \
          --group-id 113 \
          --name ${{parameter.Key}} \
          --value ${{parameters.Value}} \
          --org $(System.CollectionUri) \
          --project $(System.TeamProject)
      displayName: 'Add variables to group'
      env:
        AZURE_DEVOPS_EXT_PAT: $(System.AccessToken)

最后一个脚本给了我A mapping was not expected.

有没有办法使用脚本将多个变量添加到已经存在的变量组中?

【问题讨论】:

    标签: bash azure-devops yaml azure-pipelines azure-cli


    【解决方案1】:

    你的each 很好,我只是修正了一些小语法,它可以工作:

    parameters:
      - name: test1
        displayName: test1
        type: string
        default: "Test-1"
      - name: test2
        displayName: test2
        type: string
        default: "Test-2"
        
    jobs:
    - job: VG
      steps: 
      - ${{ each parameter in parameters }}:
        - bash: |
            az pipelines variable-group variable create \
              --group-id 113 \
              --name ${{parameter.Key}} \
              --value ${{parameter.Value}} \
              --org $(System.CollectionUri) \
              --project $(System.TeamProject)
          displayName: 'Add variable ${{parameter.Key}} to group'
          env:
            AZURE_DEVOPS_EXT_PAT: $(System.AccessToken)
    

    结果:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-24
      • 2019-11-25
      • 2020-03-12
      相关资源
      最近更新 更多