1
0
Fork 0
mirror of https://github.com/kyverno/kyverno.git synced 2025-03-10 09:56:55 +00:00
kyverno/cmd/cli/kubectl-kyverno/processor/vap_processor.go

26 lines
817 B
Go
Raw Normal View History

package processor
import (
engineapi "github.com/kyverno/kyverno/pkg/engine/api"
"github.com/kyverno/kyverno/pkg/validatingadmissionpolicy"
"k8s.io/api/admissionregistration/v1alpha1"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
)
type ValidatingAdmissionPolicyProcessor struct {
Policies []v1alpha1.ValidatingAdmissionPolicy
Resource *unstructured.Unstructured
PolicyReport bool
Rc *ResultCounts
}
func (p *ValidatingAdmissionPolicyProcessor) ApplyPolicyOnResource() ([]engineapi.EngineResponse, error) {
var responses []engineapi.EngineResponse
for _, policy := range p.Policies {
response := validatingadmissionpolicy.Validate(policy, *p.Resource)
responses = append(responses, response)
p.Rc.addValidatingAdmissionResponse(policy, response)
}
return responses, nil
}