Upgrade dependent version: github.com/open-policy-agent/opa (#5315)

Upgrade dependent version: github.com/open-policy-agent/opa v0.18.0 -> v0.45.0

Signed-off-by: hongzhouzi <hongzhouzi@kubesphere.io>

Signed-off-by: hongzhouzi <hongzhouzi@kubesphere.io>
This commit is contained in:
hongzhouzi
2022-10-31 10:58:55 +08:00
committed by GitHub
parent 668fca1773
commit ef03b1e3df
363 changed files with 277341 additions and 13544 deletions

View File

@@ -52,6 +52,9 @@ func walk(v Visitor, x interface{}) {
for _, r := range x.Rules {
Walk(w, r)
}
for _, a := range x.Annotations {
Walk(w, a)
}
for _, c := range x.Comments {
Walk(w, c)
}
@@ -85,14 +88,12 @@ func walk(v Visitor, x interface{}) {
}
case *Expr:
switch ts := x.Terms.(type) {
case *SomeDecl:
case *Term, *SomeDecl, *Every:
Walk(w, ts)
case []*Term:
for _, t := range ts {
Walk(w, t)
}
case *Term:
Walk(w, ts)
}
for i := range x.With {
Walk(w, x.With[i])
@@ -106,15 +107,15 @@ func walk(v Visitor, x interface{}) {
for _, t := range x {
Walk(w, t)
}
case Object:
case *object:
x.Foreach(func(k, vv *Term) {
Walk(w, k)
Walk(w, vv)
})
case Array:
for _, t := range x {
case *Array:
x.Foreach(func(t *Term) {
Walk(w, t)
}
})
case Set:
x.Foreach(func(t *Term) {
Walk(w, t)
@@ -133,6 +134,13 @@ func walk(v Visitor, x interface{}) {
for _, t := range x {
Walk(w, t)
}
case *Every:
if x.Key != nil {
Walk(w, x.Key)
}
Walk(w, x.Value)
Walk(w, x.Domain)
Walk(w, x.Body)
}
}
@@ -152,8 +160,8 @@ func WalkVars(x interface{}, f func(Var) bool) {
// returns true, AST nodes under the last node will not be visited.
func WalkClosures(x interface{}, f func(interface{}) bool) {
vis := &GenericVisitor{func(x interface{}) bool {
switch x.(type) {
case *ArrayComprehension, *ObjectComprehension, *SetComprehension:
switch x := x.(type) {
case *ArrayComprehension, *ObjectComprehension, *SetComprehension, *Every:
return f(x)
}
return false
@@ -280,6 +288,9 @@ func (vis *GenericVisitor) Walk(x interface{}) {
for _, r := range x.Rules {
vis.Walk(r)
}
for _, a := range x.Annotations {
vis.Walk(a)
}
for _, c := range x.Comments {
vis.Walk(c)
}
@@ -313,14 +324,12 @@ func (vis *GenericVisitor) Walk(x interface{}) {
}
case *Expr:
switch ts := x.Terms.(type) {
case *SomeDecl:
case *Term, *SomeDecl, *Every:
vis.Walk(ts)
case []*Term:
for _, t := range ts {
vis.Walk(t)
}
case *Term:
vis.Walk(ts)
}
for i := range x.With {
vis.Walk(x.With[i])
@@ -334,15 +343,15 @@ func (vis *GenericVisitor) Walk(x interface{}) {
for _, t := range x {
vis.Walk(t)
}
case Object:
for _, k := range x.Keys() {
case *object:
x.Foreach(func(k, v *Term) {
vis.Walk(k)
vis.Walk(x.Get(k))
}
case Array:
for _, t := range x {
})
case *Array:
x.Foreach(func(t *Term) {
vis.Walk(t)
}
})
case Set:
for _, t := range x.Slice() {
vis.Walk(t)
@@ -361,6 +370,13 @@ func (vis *GenericVisitor) Walk(x interface{}) {
for _, t := range x {
vis.Walk(t)
}
case *Every:
if x.Key != nil {
vis.Walk(x.Key)
}
vis.Walk(x.Value)
vis.Walk(x.Domain)
vis.Walk(x.Body)
}
}
@@ -398,6 +414,9 @@ func (vis *BeforeAfterVisitor) Walk(x interface{}) {
for _, r := range x.Rules {
vis.Walk(r)
}
for _, a := range x.Annotations {
vis.Walk(a)
}
for _, c := range x.Comments {
vis.Walk(c)
}
@@ -431,14 +450,12 @@ func (vis *BeforeAfterVisitor) Walk(x interface{}) {
}
case *Expr:
switch ts := x.Terms.(type) {
case *SomeDecl:
case *Term, *SomeDecl, *Every:
vis.Walk(ts)
case []*Term:
for _, t := range ts {
vis.Walk(t)
}
case *Term:
vis.Walk(ts)
}
for i := range x.With {
vis.Walk(x.With[i])
@@ -452,15 +469,15 @@ func (vis *BeforeAfterVisitor) Walk(x interface{}) {
for _, t := range x {
vis.Walk(t)
}
case Object:
for _, k := range x.Keys() {
case *object:
x.Foreach(func(k, v *Term) {
vis.Walk(k)
vis.Walk(x.Get(k))
}
case Array:
for _, t := range x {
})
case *Array:
x.Foreach(func(t *Term) {
vis.Walk(t)
}
})
case Set:
for _, t := range x.Slice() {
vis.Walk(t)
@@ -479,6 +496,13 @@ func (vis *BeforeAfterVisitor) Walk(x interface{}) {
for _, t := range x {
vis.Walk(t)
}
case *Every:
if x.Key != nil {
vis.Walk(x.Key)
}
vis.Walk(x.Value)
vis.Walk(x.Domain)
vis.Walk(x.Body)
}
}
@@ -518,12 +542,14 @@ func (vis *VarVisitor) Vars() VarSet {
return vis.vars
}
// visit determines if the VarVisitor will recurse into x: if it returns `true`,
// the visitor will _skip_ that branch of the AST
func (vis *VarVisitor) visit(v interface{}) bool {
if vis.params.SkipObjectKeys {
if o, ok := v.(Object); ok {
for _, k := range o.Keys() {
vis.Walk(o.Get(k))
}
o.Foreach(func(k, v *Term) {
vis.Walk(v)
})
return true
}
}
@@ -536,9 +562,15 @@ func (vis *VarVisitor) visit(v interface{}) bool {
}
}
if vis.params.SkipClosures {
switch v.(type) {
switch v := v.(type) {
case *ArrayComprehension, *ObjectComprehension, *SetComprehension:
return true
case *Expr:
if ev, ok := v.Terms.(*Every); ok {
vis.Walk(ev.Domain)
// We're _not_ walking ev.Body -- that's the closure here
return true
}
}
}
if vis.params.SkipWithTarget {
@@ -576,6 +608,20 @@ func (vis *VarVisitor) visit(v interface{}) bool {
vis.Walk(v[i])
}
return true
case *With:
if ref, ok := v.Target.Value.(Ref); ok {
for _, t := range ref[1:] {
vis.Walk(t)
}
}
if ref, ok := v.Value.Value.(Ref); ok {
for _, t := range ref[1:] {
vis.Walk(t)
}
} else {
vis.Walk(v.Value)
}
return true
}
}
if v, ok := v.(Var); ok {
@@ -634,14 +680,12 @@ func (vis *VarVisitor) Walk(x interface{}) {
}
case *Expr:
switch ts := x.Terms.(type) {
case *SomeDecl:
case *Term, *SomeDecl, *Every:
vis.Walk(ts)
case []*Term:
for _, t := range ts {
vis.Walk(t)
}
case *Term:
vis.Walk(ts)
}
for i := range x.With {
vis.Walk(x.With[i])
@@ -655,15 +699,15 @@ func (vis *VarVisitor) Walk(x interface{}) {
for _, t := range x {
vis.Walk(t)
}
case Object:
for _, k := range x.Keys() {
case *object:
x.Foreach(func(k, v *Term) {
vis.Walk(k)
vis.Walk(x.Get(k))
}
case Array:
for _, t := range x {
})
case *Array:
x.Foreach(func(t *Term) {
vis.Walk(t)
}
})
case Set:
for _, t := range x.Slice() {
vis.Walk(t)
@@ -682,5 +726,12 @@ func (vis *VarVisitor) Walk(x interface{}) {
for _, t := range x {
vis.Walk(t)
}
case *Every:
if x.Key != nil {
vis.Walk(x.Key)
}
vis.Walk(x.Value)
vis.Walk(x.Domain)
vis.Walk(x.Body)
}
}