mirror of
https://github.com/kyverno/kyverno.git
synced 2025-03-09 01:16:55 +00:00
* cherry-pick fix attestation checks https://github.com/kyverno/kyverno/pull/3999 Signed-off-by: Jim Bugwadia <jim@nirmata.com> * remove TUF initialization from main (#4098) Signed-off-by: Jim Bugwadia <jim@nirmata.com> * fix imageVerify validation checks and conversion logic (#4038) Signed-off-by: Jim Bugwadia <jim@nirmata.com> Co-authored-by: Vyankatesh Kudtarkar <vyankateshkd@gmail.com> * release event memory (#4138) Signed-off-by: Jim Bugwadia <jim@nirmata.com> Co-authored-by: Vyankatesh Kudtarkar <vyankateshkd@gmail.com> Co-authored-by: Prateek Pandey <prateek.pandey@nirmata.com> Co-authored-by: Vyankatesh Kudtarkar <vyankateshkd@gmail.com>
39 lines
1.2 KiB
Go
39 lines
1.2 KiB
Go
package webhooks
|
|
|
|
import (
|
|
"github.com/go-logr/logr"
|
|
"github.com/kyverno/kyverno/pkg/engine/response"
|
|
"github.com/kyverno/kyverno/pkg/event"
|
|
)
|
|
|
|
//generateEvents generates event info for the engine responses
|
|
func generateEvents(engineResponses []*response.EngineResponse, blocked bool, log logr.Logger) []event.Info {
|
|
var events []event.Info
|
|
|
|
// - Some/All policies fail or error
|
|
// - report failure events on policy
|
|
// - report failure events on resource
|
|
// - Some/All policies succeeded
|
|
// - report success event on resource
|
|
|
|
for _, er := range engineResponses {
|
|
if !er.IsSuccessful() {
|
|
for i, ruleResp := range er.PolicyResponse.Rules {
|
|
if ruleResp.Status == response.RuleStatusFail || ruleResp.Status == response.RuleStatusError {
|
|
e := event.NewPolicyFailEvent(event.AdmissionController, event.PolicyViolation, er, &er.PolicyResponse.Rules[i], blocked)
|
|
events = append(events, e)
|
|
}
|
|
|
|
if !blocked {
|
|
e := event.NewResourceViolationEvent(event.AdmissionController, event.PolicyViolation, er, &er.PolicyResponse.Rules[i])
|
|
events = append(events, e)
|
|
}
|
|
}
|
|
} else {
|
|
e := event.NewPolicyAppliedEvent(event.AdmissionController, er)
|
|
events = append(events, e)
|
|
}
|
|
}
|
|
|
|
return events
|
|
}
|