【问题标题】:How to use filtered array in Azure pipeline template如何在 Azure 管道模板中使用过滤后的数组
【发布时间】:2022-01-01 00:00:59
【问题描述】:

我有一个管道模板,它采用如下对象类型参数:

MyTemplate.yml:

parameters:
  - name: repos
    type: object
    default:
        -name: Name1
         path: Path1
        -name: Name2
         path: Path2

steps:
    - bash: |
        names=(get list of names from repos)
        for name in names; do
           ...
        done

如何实现(get list of names from repos) 逻辑,以便names shell 变量可以具有“Name1 Name2”的值?

Filtered Array 似乎是我需要的,但文档并不清楚如何使用它。我试过${{ parameters.repos.*.name }},但管道抱怨Unable to convert from Object to String. Value: Object

【问题讨论】:

    标签: azure-devops


    【解决方案1】:
    parameters:
    - name: myArray
      type: object
      default:
        - name: Name1
          path: Path1
        - name: Name2
          path: Path2
    
    
    variables:
       A: ${{ join(';',parameters.myArray.*.name) }}
    
    steps:
      - script: echo $A 
    

    【讨论】:

    • 感谢您的回答。我试过这个,但我得到了Unexpected value "variables"。我猜variables 在步骤模板中是不允许的。
    猜你喜欢
    • 2012-05-12
    • 2020-06-12
    • 2019-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多