GitLab CI yml根据工作流规则检查值是否在数组内



在触发管道之前,我必须验证它。验证的一个标准是CI/CD变量是否具有可接受的值之一。有没有办法找到它是否匹配正确的值?

我试图创建一个值数组,然后在工作流规则中进行检查,但从其他问题中还不清楚如何做到这一点。

所以它应该是这样的:

#WARNING: invalid yml!
variables:
ValidValues: ["Value1", "Value2", "SomeOtherValue"]
workflow:
rules:
- if: ValidValues contains $GivenValue
when: always

在搜索这个问题时,我发现我可以将允许的值添加到正则表达式中,在正则表达式上我可以检查工作流规则。最后看起来是这样的:

workflow:
rules:
- if: $GivenValue =~ /b(Value1|Value2|SomeOtherValue)b/
when: always
- when: never

不幸的是,我没有在最初的方法中找到解决方案(将允许的值添加到数组中,然后查找它们(,但这也很有效。

相关内容

最新更新