【发布时间】:2021-01-26 17:04:29
【问题描述】:
我有一个脚本化的 Jenkins 管道,我在其中使用名为 CUSTOM_YAML 的多行字符串参数。
在构建作业时,我将该参数的输入作为 yaml 文本提供,并将其转换为 .yaml 文件:
writeFile file: 'demo.yaml', text: params.DEMO_YAML
现在,我想验证一下这个 yaml 文件(demo.yaml)的格式是否正确。
注意:就像有多种工具可以手动执行此操作(例如 https://codebeautify.org/yaml-validator ),我们可以在其中粘贴文本并单击 validate 和 。但是如何在我的 Jenkins 管道中实现这一点?
【问题讨论】:
-
调用readYaml步骤怎么样?如果你用 try-catch 包围它,你可以检查它是否可以被解析
-
我试过了:datas = readYaml (file: 'demo.yaml')。在输入多行参数中,我给出了一些未在 yaml 中格式化的文本,但仍高于 readYaml 函数返回的输出文本。如果 yaml 的格式不正确,它应该会抛出异常。不是吗?
标签: validation yaml jenkins-pipeline multilinestring