繁体   English   中英

如何在 Groovy/Jenkins 中循环遍历 YAML 列表文件

[英]How to loop through a YAML list file in Groovy/Jenkins

我有一个 YAML 文件模板,如下所示:

cars:
    - brand: bmw 
      fuel: petrol
      transmission: manual
    - brand: mercedes
      fuel: diesel
      transmission: auto
    - brand: audi
      fuel: electric
      transmission: semi-auto

我正在尝试为 Jenkins 管道编写 function 管道,该管道读取 YAML 文件,获取每个数组集的品牌、燃料和传输值,并假设它基于这些变量设置某种循环。

我尝试过使用 readYaml,但是在这种情况下它似乎没有选择第一个“品牌”并出现错误,不确定这个 YAML 布局是否适合我的用例

我努力了:

def cars = readYaml file = cars.yaml 
def brand = cars[brand]

期望 echo brand 返回一个品牌名称列表,然后我可以使用它来查找该品牌的燃料和传输值。 但是我收到此错误

groovy.lang.MissingPropertyException: No such property: mkp for class: WorkflowScript

有任何想法吗?

正确的语法是

def data = readYaml file: "cars.yaml"
def brand = data.cars[0].brand

您可以在管道实用程序步骤文档中找到定义(和示例)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM