policyreport

package
v1.5.2-rc1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 16, 2021 License: Apache-2.0 Imports: 44 Imported by: 0

Documentation

Index

Constants

View Source
const (

	// static value for PolicyReportResult.Source
	SourceValue = "Kyverno"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Builder

type Builder interface {
	// contains filtered or unexported methods
}

Builder builds report change request struct this is base type of namespaced and cluster policy report

func NewBuilder

func NewBuilder(cpolLister kyvernolister.ClusterPolicyLister, polLister kyvernolister.PolicyLister) Builder

NewBuilder ...

type CleanupReportChangeRequests added in v1.4.2

type EngineResponseResult

type EngineResponseResult struct {
	Resource response.ResourceSpec
	Rules    []kyverno.ViolatedRule
}

type EraseResultsEntries added in v1.3.5

type EraseResultsEntries = func(pclient *kyvernoclient.Clientset, reportLister policyreportlister.PolicyReportLister, clusterReportLister policyreportlister.ClusterPolicyReportLister) error

type Generator

type Generator struct {
	// contains filtered or unexported fields
}

Generator creates report request

func NewReportChangeRequestGenerator

func NewReportChangeRequestGenerator(client *policyreportclient.Clientset,
	dclient *dclient.Client,
	reportReqInformer requestinformer.ReportChangeRequestInformer,
	clusterReportReqInformer requestinformer.ClusterReportChangeRequestInformer,
	cpolInformer kyvernoinformer.ClusterPolicyInformer,
	polInformer kyvernoinformer.PolicyInformer,
	log logr.Logger) *Generator

NewReportChangeRequestGenerator returns a new instance of report request generator

func (*Generator) Add

func (gen *Generator) Add(infos ...Info)

Add queues a policy violation create request

func (*Generator) Run

func (gen *Generator) Run(workers int, stopCh <-chan struct{})

Run starts the workers

type GeneratorInterface

type GeneratorInterface interface {
	Add(infos ...Info)
}

GeneratorInterface provides API to create PVs

type Info

type Info struct {
	PolicyName string
	Namespace  string
	Results    []EngineResponseResult
}

Info stores the policy application results for all matched resources Namespace is set to empty "" if resource is cluster wide resource

func GeneratePRsFromEngineResponse

func GeneratePRsFromEngineResponse(ers []*response.EngineResponse, log logr.Logger) (pvInfos []Info)

GeneratePRsFromEngineResponse generate Violations from engine responses

func (Info) GetRuleLength

func (i Info) GetRuleLength() int

func (Info) ToKey

func (i Info) ToKey() string

type PolicyReportEraser added in v1.3.5

type PolicyReportEraser interface {
	CleanupReportChangeRequests(cleanup CleanupReportChangeRequests) error
	EraseResultsEntries(erase EraseResultsEntries) error
}

type ReportGenerator

type ReportGenerator struct {

	// ReconcileCh sends a signal to policy controller to force the reconciliation of policy report
	// if send true, the reports' results will be erased, this is used to recover from the invalid records
	ReconcileCh chan bool
	// contains filtered or unexported fields
}

ReportGenerator creates policy report

func NewReportGenerator

NewReportGenerator returns a new instance of policy report generator

func (*ReportGenerator) CleanupReportChangeRequests added in v1.4.2

func (g *ReportGenerator) CleanupReportChangeRequests(cleanup CleanupReportChangeRequests) error

func (*ReportGenerator) EraseResultsEntries added in v1.3.5

func (g *ReportGenerator) EraseResultsEntries(erase EraseResultsEntries) error

func (*ReportGenerator) Run

func (g *ReportGenerator) Run(workers int, stopCh <-chan struct{})

Run starts the workers

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL