Open Policy Agent - 检查列表中元素的存在

问题描述

刚开始处理 conftestOPA,我正在尝试验证示例 kubernetes 部署清单以确保它包含列表中的特定键(即 image 存在所有containers)

这是一个示例输入

apiVersion: apps/v1
kind: Deployment
spec:
  template:
    spec:
      containers:
      - image: hub.com/img1:tag1
        imagePullPolicy: Always

我认为此政策应该检查所有容器的 image 是否存在:

deny[reason] {
    input.kind == "Deployment"
    some i
    not input.spec.template.spec.containers[i].image
    reason := "Container.image not found"
}

但是 conftest 抛出错误抱怨 not input.spec.template.spec.containers[i].image expression is unsafe

对于如何处理此案例的任何评论/建议表示赞赏。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)