[英]Can this Rego policy be simplified
我有这个 Rego 政策,如果可能的话,我想进一步简化(更少的代码行),尤其是两个发现块。 考虑到我是 Rego 菜鸟,我尝试过但失败了。
package test
compliant(resource) {
resource.good
}
findings[x] {
resource := input.resources[_]
compliant(resource)
x := {
"compliant": true,
"resource": resource,
}
}
findings[x] {
resource := input.resources[_]
not compliant(resource)
x := {
"compliant": false,
"resource": resource,
}
}
链接到 OPA 游乐场
您似乎想对false
true
。
您可以引入一个帮助程序 function ,它允许您同时显示
package test
f(x) := true { compliant(x) }
f(x) := false { not compliant(x) }
compliant(resource) {
resource.good
}
findings[x] {
resource := input.resources[_]
x := {
"compliant": f(resource),
"resource": resource,
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.