DirectorySecurity AdvisoriesPricing
Sign in
Directory
policy-reporter logoHELM

policy-reporter

Helm chart
Last changed
Request a free trial

Contact our team to test out this Helm chart and related images for free. Please also indicate any other images you would like to evaluate.

Overview
Chart tags
Default values
Chart metadata
Images

Tag:
Compare:

1
# -- Override the chart name used for all resources
2
nameOverride: ""
3
# -- Overwrite the fullname of all resources
4
fullnameOverride: "policy-reporter"
5
# -- Overwrite the namespace of all resources
6
namespaceOverride: ""
7
# -- Overwrite apiVersion for specific resources
8
apiVersionOverride:
9
podDisruptionBudget: ""
10
image:
11
# -- (string) Image registry
12
registry: cgr.dev
13
# -- (string) Image repository
14
repository: chainguard-private/kyverno-policy-reporter-fips
15
# -- (string) Image pullPolicy
16
pullPolicy: IfNotPresent
17
# -- (string) Image tag
18
tag: 3.11.1-r3@sha256:914c79d3057d7ad7281c6740a4f89012570decfa2f7b689a83203e7a5b6004f9
19
# -- Image pullSecrets
20
imagePullSecrets: []
21
# -- Deployment priorityClassName
22
priorityClassName: ""
23
# -- Deployment replica count
24
replicaCount: 1
25
# -- The number of revisions to keep
26
revisionHistoryLimit: 10
27
# -- Deployment strategy
28
updateStrategy: {}
29
# rollingUpdate:
30
# maxSurge: 25%
31
# maxUnavailable: 25%
32
# type: RollingUpdate
33
34
# -- Container port
35
port:
36
name: http
37
number: 8080
38
# -- Key/value pairs that are attached to all resources.
39
annotations: {}
40
rbac:
41
# -- Create RBAC resources
42
enabled: true
43
serviceAccount:
44
# -- Create ServiceAccount
45
create: true
46
# -- Enable ServiceAccount automount
47
automount: true
48
# -- Annotations for the ServiceAccount
49
annotations: {}
50
# -- The ServiceAccount name
51
name: ""
52
service:
53
# -- Create Service
54
enabled: true
55
# -- Service type
56
type: ClusterIP
57
# -- Service port
58
port: 8080
59
# -- MCP Service port.
60
mcpPort: 9090
61
# -- Service annotations
62
annotations: {}
63
# -- Service labels
64
labels: {}
65
# -- Security context for the pod
66
podSecurityContext:
67
fsGroup: 1234
68
securityContext:
69
runAsUser: 1234
70
runAsNonRoot: true
71
privileged: false
72
allowPrivilegeEscalation: false
73
readOnlyRootFilesystem: true
74
capabilities:
75
drop:
76
- ALL
77
seccompProfile:
78
type: RuntimeDefault
79
# -- Additional annotations to add to each pod
80
podAnnotations: {}
81
# -- Additional labels to add to each pod
82
podLabels: {}
83
# -- Custom selector labels, overwrites the default set
84
selectorLabels: {}
85
# -- Resource constraints
86
resources: {}
87
# limits:
88
# memory: 100Mi
89
# cpu: 10m
90
# requests:
91
# memory: 75Mi
92
# cpu: 5m
93
94
networkPolicy:
95
# -- Create NetworkPolicy
96
enabled: false
97
# -- Egress rule to allow Kubernetes API Server access
98
egress:
99
- to:
100
ports:
101
- protocol: TCP
102
port: 6443
103
ingress: []
104
ingress:
105
# -- Create Ingress
106
# This ingress exposes the policy-reporter core app.
107
enabled: false
108
# -- Ingress className
109
className: ""
110
# -- Labels for the Ingress
111
labels: {}
112
# -- Annotations for the Ingress
113
annotations: {}
114
# kubernetes.io/ingress.class: nginx
115
# kubernetes.io/tls-acme: "true"
116
# -- Ingress host list
117
hosts:
118
# - host: chart-example.local
119
# paths: []
120
# -- Ingress tls list
121
tls: []
122
# - secretName: chart-example-tls
123
# hosts:
124
# - chart-example.local
125
httproute:
126
# -- Enable HTTPRoute resource (Gateway API alternative to Ingress)
127
# Requires Gateway API CRDs (v1) installed in cluster
128
# https://gateway-api.sigs.k8s.io/
129
enabled: false
130
# -- Additional HTTPRoute labels
131
labels: {}
132
# -- Additional HTTPRoute annotations
133
annotations: {}
134
# -- Gateway API parentRefs (list of Gateway references)
135
# Must reference an existing Gateway resource
136
parentRefs: []
137
# - name: example-gateway
138
# namespace: gateway-system
139
# sectionName: https
140
# -- List of hostnames for HTTPRoute
141
hostnames: []
142
# - policy-reporter.example.com
143
# -- HTTPRoute rules configuration
144
# Allows advanced routing with matches and filters
145
rules:
146
- matches:
147
- path:
148
type: PathPrefix
149
value: /
150
# Optional filters:
151
# filters:
152
# - type: RequestHeaderModifier
153
# requestHeaderModifier:
154
# add:
155
# - name: X-Custom-Header
156
# value: value
157
# Optional timeouts configuration:
158
# timeouts:
159
# request: 30s
160
# backendRequest: 30s
161
logging:
162
# -- Enables server access logging
163
server: false
164
# -- Log encoding
165
# possible encodings are console and json
166
encoding: console
167
# -- Log level
168
# default info
169
logLevel: 0
170
rest:
171
# -- Enables the REST API
172
enabled: false
173
# -- Wait for initial reports to be persisted before readiness and REST requests succeed. Requires REST and SQLite. Custom probes must use /healthz for liveness and /ready for readiness.
174
waitForInitialReports: false
175
mcp:
176
# -- Enables the MCP Server
177
enabled: false
178
# -- Port for the MCP Server
179
port: 9090
180
metrics:
181
# -- Enables Prometheus Metrics
182
enabled: false
183
# -- Metric Mode allows to customize labels
184
# Allowed values: detailed, simple, custom
185
mode: detailed
186
# -- List of used labels in custom mode
187
# Supported fields are: ["namespace", "rule", "policy", "report" // Report name, "kind" // resource kind, "name" // resource name, "status", "severity", "category", "source"]
188
customLabels: []
189
# -- Filter results to reduce cardinality
190
filter: {}
191
# sources:
192
# exclude: ["Trivy CIS Kube Bench"]
193
# status:
194
# exclude: ["pass", "skip"]
195
196
profiling:
197
# -- Enable profiling with pprof
198
enabled: false
199
# -- Amount of queue workers for Report resource processing
200
worker: 5
201
# -- Filter Report resources to process
202
reportFilter: {}
203
# # -- Filter reports based on an namespace allow- or disallow list, wildcards are supported
204
# namespaces:
205
# include: []
206
# exclude: []
207
# # -- Disable the processing of cluster scoped Reports
208
# disableClusterReports: false
209
210
# -- Customize source specific logic like result ID generation
211
sourceConfig: []
212
# - selector:
213
# source: kyverno
214
# # -- Handles cluster scoped reports for namespaces as self assigned namespace scoped report
215
# selfassignNamespaces: true
216
# customId:
217
# enabled: true
218
# fields: ["resource", "policy", "rule", "category", "result", "message"]
219
220
# Source based Report filter
221
sourceFilters:
222
- selector:
223
# -- select Report by source
224
sources: [kyverno, KyvernoValidatingPolicy, KyvernoImageValidatingPolicy]
225
# -- Filter out Reports of controlled Pods and Jobs, only works for Reports with scope resource
226
uncontrolledOnly: true
227
# -- Filter out cluster scoped Reports
228
disableClusterReports: false
229
# -- Filter out Reports based on the scope resource kind
230
kinds:
231
exclude: []
232
global:
233
# -- additional labels added on each resource
234
labels: {}
235
# basicAuth for APIs and metrics
236
basicAuth:
237
# -- HTTP BasicAuth username
238
username: ""
239
# -- HTTP BasicAuth password
240
password: ""
241
# -- (optional) Secret reference to get username and/or password from
242
secretRef: ""
243
emailReports:
244
# -- (optional) - Displayed in the email report if configured
245
clusterName: ""
246
# -- Title prefix in the email subject
247
titlePrefix: "Report"
248
# -- Resource constraints for the created CronJobs
249
resources: {}
250
smtp:
251
# -- (optional) Secret reference to provide the complete or partial SMTP configuration
252
secret: ""
253
# -- SMTP Server Host
254
host: ""
255
# -- SMTP Server Port
256
port: 465
257
# -- SMTP Username
258
username: ""
259
# -- SMTP Password
260
password: ""
261
# -- Displayed from email address
262
from: ""
263
# -- SMTP Encryption
264
# Default is none, supports ssl/tls and starttls
265
encryption: ""
266
# -- Skip SMTP TLS verification
267
skipTLS: false
268
# -- SMTP Server Certificate file path
269
certificate: ""
270
graphAPI:
271
# -- Enable Microsoft Graph API for E-Mail reports, takes precedence over SMTP
272
enabled: false
273
# -- Microsoft Graph API Tenant ID
274
tenant: ""
275
# -- Microsoft Graph API Client ID
276
clientID: ""
277
# -- Microsoft Graph API Client Secret
278
clientSecret: ""
279
# -- (optional) Name of an existing Secret with a `clientSecret` key, used instead of `clientSecret`
280
secretRef: ""
281
# -- Microsoft Graph API User ID (Sender)
282
userID: ""
283
# -- Microsoft Graph API CC Recipients
284
cc: []
285
# -- Microsoft Graph API BCC Recipients
286
bcc: []
287
# -- Disable saving sent messages to the Sent Items folder
288
disableSaveToSentItems: false
289
# -- Microsoft Graph API Azure AD Endpoint override
290
azureADEndpoint: "https://login.microsoftonline.com"
291
# -- Microsoft Graph API endpoint override
292
graphEndpoint: "https://graph.microsoft.com"
293
summary:
294
# -- Enable Summary E-Mail reports
295
enabled: false
296
# -- CronJob schedule
297
schedule: "0 8 * * *"
298
# -- CronJob activeDeadlineSeconds
299
activeDeadlineSeconds: 300
300
# -- CronJob backoffLimit
301
backoffLimit: 3
302
# -- CronJob ttlSecondsAfterFinished
303
ttlSecondsAfterFinished: 0
304
# -- CronJob restartPolicy
305
restartPolicy: Never
306
# -- List of receiver email addresses
307
to: []
308
# -- Attach report data as CSV instead of rendering details in the email body (empty or csv). Channels configure this independently.
309
attachmentFormat: ""
310
# -- (optional) Report filter
311
filter: {}
312
# # remove ClusterPolicyResults from Reports
313
# disableClusterReports: false
314
# namespaces:
315
# include: []
316
# exclude: []
317
# sources:
318
# include: []
319
# exclude: []
320
# -- (optional) Channels can be used to to send only a subset of namespaces / sources to dedicated email addresses
321
channels: []
322
# - to: ['team-a@company.org']
323
# attachmentFormat: csv
324
# filter:
325
# disableClusterReports: true
326
# namespaces:
327
# include: ['team-a-*']
328
# sources:
329
# include: ['Kyverno']
330
violations:
331
# -- Enable Violation Summary E-Mail reports
332
enabled: false
333
# -- CronJob schedule
334
schedule: "0 8 * * *"
335
# -- CronJob activeDeadlineSeconds
336
activeDeadlineSeconds: 300
337
# -- CronJob backoffLimit
338
backoffLimit: 3
339
# -- CronJob ttlSecondsAfterFinished
340
ttlSecondsAfterFinished: 0
341
# -- CronJob restartPolicy
342
restartPolicy: Never
343
# -- List of receiver email addresses
344
to: []
345
# -- Attach report data as CSV instead of rendering details in the email body (empty or csv). Channels configure this independently.
346
attachmentFormat: ""
347
# -- (optional) Report filter
348
filter: {}
349
# disableClusterReports: false # remove ClusterPolicyResults from Reports
350
# namespaces:
351
# include: []
352
# exclude: []
353
# sources:
354
# include: []
355
# exclude: []
356
# -- (optional) Channels can be used to to send only a subset of namespaces / sources to dedicated email addresses
357
channels: []
358
# - to: ['team-a@company.org']
359
# attachmentFormat: csv
360
# filter:
361
# disableClusterReports: true
362
# namespaces:
363
# include: ['team-a-*']
364
# sources:
365
# include: ['Kyverno']
366
existingTargetConfig:
367
# -- Use an already existing configuration
368
enabled: false
369
# -- Name of the secret with the config
370
name: ""
371
# -- SubPath within the secret (defaults to config.yaml)
372
subPath: ""
373
target:
374
# -- enable and install TargetConfig CRD
375
crd: false
376
loki:
377
# -- Host Address
378
host: ""
379
# -- Loki API, defaults to "/loki/api/v1/push"
380
path: ""
381
# -- Server Certificate file path
382
# Can be added under extraVolumes
383
certificate: ""
384
# -- Skip TLS verification
385
skipTLS: false
386
# -- Read configuration from an already existing Secret
387
secretRef: ""
388
# -- Mounted secret path by Secrets Controller, secret should be in json format
389
mountedSecret: ""
390
# -- Minimum severity: "" < info < low < medium < high < critical
391
minimumSeverity: ""
392
# -- List of sources which should send
393
sources: []
394
# -- Skip already existing report results on startup
395
skipExistingOnStartup: true
396
# -- Added as additional labels
397
customFields: {}
398
# -- Additional HTTP Headers
399
headers: {}
400
# -- HTTP BasicAuth username
401
username: ""
402
# -- HTTP BasicAuth password
403
password: ""
404
# -- Filter Results which should send to this target
405
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
406
# Filters are available for all targets except the UI
407
filter: {}
408
# namespaces:
409
# include: ["develop"]
410
# priorities:
411
# exclude: ["debug", "info", "error"]
412
# labels:
413
# include: ["app", "owner:team-a", "monitoring:*"]
414
# -- List of channels to route results to different configurations
415
channels: []
416
# - host: "http://loki.loki-stack:3100"
417
# sources: []
418
# customLabels: {}
419
# filter:
420
# namespaces:
421
# include: ["develop"]
422
# priorities:
423
# exclude: ["debug", "info", "error"]
424
# reportLabels:
425
# . include: ["app", "owner:team-b"]
426
427
elasticsearch:
428
# -- Host address
429
host: ""
430
# -- Server Certificate file path
431
# Can be added under extraVolumes
432
certificate: ""
433
# -- Skip TLS verification
434
skipTLS: false
435
# -- Additional HTTP Headers
436
headers: {}
437
# -- Elasticsearch index (default: policy-reporter)
438
index: "policy-reporter"
439
# -- Elasticsearch index rotation and index suffix
440
# Possible values: daily, monthly, annually, none (default: daily)
441
rotation: "daily"
442
# -- Enables Elasticsearch typless API
443
# https://www.elastic.co/blog/moving-from-types-to-typeless-apis-in-elasticsearch-7-0 keeping as false for retrocompatibility.
444
typelessApi: false
445
# -- HTTP BasicAuth username
446
username: ""
447
# -- HTTP BasicAuth password
448
password: ""
449
# -- Elasticsearch API Key for api key authentication
450
apiKey: ""
451
# -- Read configuration from an already existing Secret
452
secretRef: ""
453
# -- Mounted secret path by Secrets Controller, secret should be in json format
454
mountedSecret: ""
455
# -- Minimum severity: "" < info < low < medium < high < critical
456
minimumSeverity: ""
457
# -- List of sources which should send
458
sources: []
459
# -- Skip already existing report results on startup
460
skipExistingOnStartup: true
461
# -- Added as additional labels
462
customFields: {}
463
# -- Filter Results which should send to this target
464
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
465
# Filters are available for all targets except the UI
466
filter: {}
467
# -- List of channels to route results to different configurations
468
channels: []
469
slack:
470
# -- Webhook Address
471
webhook: ""
472
# -- Slack Channel
473
channel: ""
474
# -- Read configuration from an already existing Secret
475
secretRef: ""
476
# -- Mounted secret path by Secrets Controller, secret should be in json format
477
mountedSecret: ""
478
# -- Minimum severity: "" < info < low < medium < high < critical
479
minimumSeverity: ""
480
# -- List of sources which should send
481
sources: []
482
# -- Skip already existing report results on startup
483
skipExistingOnStartup: true
484
# -- Added as additional labels
485
customFields: {}
486
# -- Filter Results which should send to this target
487
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
488
# Filters are available for all targets except the UI
489
filter: {}
490
# -- List of channels to route results to different configurations
491
channels: []
492
# - webhook: "https://slack.webhook1"
493
# channel: ""
494
# filter:
495
# namespaces:
496
# include: ["develop"]
497
# priorities:
498
# exclude: ["debug", "info", "error"]
499
# policies:
500
# include: ["require-run-as-nonroot"]
501
# reportLabels:
502
# . include: ["app", "owner:team-b"]
503
# - webhook: "https://slack.webhook2"
504
# minimumSeverity: "warning"
505
# filter:
506
# namespaces:
507
# include: ["team-a-*"]
508
509
discord:
510
# -- Webhook Address
511
webhook: ""
512
# -- Server Certificate file path
513
# Can be added under extraVolumes
514
certificate: ""
515
# -- Skip TLS verification
516
skipTLS: false
517
# -- Additional HTTP Headers
518
headers: {}
519
# -- Read configuration from an already existing Secret
520
secretRef: ""
521
# -- Mounted secret path by Secrets Controller, secret should be in json format
522
mountedSecret: ""
523
# -- Minimum severity: "" < info < low < medium < high < critical
524
minimumSeverity: ""
525
# -- List of sources which should send
526
sources: []
527
# -- Skip already existing report results on startup
528
skipExistingOnStartup: true
529
# -- Added as additional labels
530
customFields: {}
531
# -- Filter Results which should send to this target
532
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
533
# Filters are available for all targets except the UI
534
filter: {}
535
# -- List of channels to route results to different configurations
536
channels: []
537
teams:
538
# -- Webhook Address
539
webhook: ""
540
# -- Server Certificate file path
541
# Can be added under extraVolumes
542
certificate: ""
543
# -- Skip TLS verification
544
skipTLS: false
545
# -- Additional HTTP Headers
546
headers: {}
547
# -- Read configuration from an already existing Secret
548
secretRef: ""
549
# -- Mounted secret path by Secrets Controller, secret should be in json format
550
mountedSecret: ""
551
# -- Minimum severity: "" < info < low < medium < high < critical
552
minimumSeverity: ""
553
# -- List of sources which should send
554
sources: []
555
# -- Skip already existing report results on startup
556
skipExistingOnStartup: true
557
# -- Added as additional labels
558
customFields: {}
559
# -- Filter Results which should send to this target
560
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
561
# Filters are available for all targets except the UI
562
filter: {}
563
# -- List of channels to route results to different configurations
564
channels: []
565
webhook:
566
# -- Webhook Address
567
webhook: ""
568
# -- Server Certificate file path
569
# Can be added under extraVolumes
570
certificate: ""
571
# -- Skip TLS verification
572
skipTLS: false
573
# -- Additional HTTP Headers
574
headers: {}
575
# -- Read configuration from an already existing Secret
576
secretRef: ""
577
# -- Mounted secret path by Secrets Controller, secret should be in json format
578
mountedSecret: ""
579
# -- Minimum severity: "" < info < low < medium < high < critical
580
minimumSeverity: ""
581
# -- List of sources which should send
582
sources: []
583
# -- Skip already existing report results on startup
584
skipExistingOnStartup: true
585
# -- Added as additional labels
586
customFields: {}
587
# -- Keepalive configuration
588
keepalive:
589
# -- Duration string like "30s" for heartbeat interval, '0' - disabled
590
interval: "0"
591
# -- Additional parameters to include in heartbeat payload
592
params: {}
593
# -- Filter Results which should send to this target
594
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
595
# Filters are available for all targets except the UI
596
filter: {}
597
# -- List of channels to route results to different configurations
598
channels: []
599
telegram:
600
# -- Telegram bot token
601
token: ""
602
# -- Telegram chat id
603
chatId: ""
604
# -- (optional) Telegram proxy host
605
host: ""
606
# -- Server Certificate file path
607
# Can be added under extraVolumes
608
certificate: ""
609
# -- Skip TLS verification
610
skipTLS: false
611
# -- Additional HTTP Headers
612
headers: {}
613
# -- Read configuration from an already existing Secret
614
secretRef: ""
615
# -- Mounted secret path by Secrets Controller, secret should be in json format
616
mountedSecret: ""
617
# -- Minimum severity: "" < info < low < medium < high < critical
618
minimumSeverity: ""
619
# -- List of sources which should send
620
sources: []
621
# -- Skip already existing report results on startup
622
skipExistingOnStartup: true
623
# -- Added as additional labels
624
customFields: {}
625
# -- Filter Results which should send to this target
626
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
627
# Filters are available for all targets except the UI
628
filter: {}
629
# -- List of channels to route results to different configurations
630
channels: []
631
googleChat:
632
# -- Webhook Address
633
webhook: ""
634
# -- Server Certificate file path
635
# Can be added under extraVolumes
636
certificate: ""
637
# -- Skip TLS verification
638
skipTLS: false
639
# -- Additional HTTP Headers
640
headers: {}
641
# -- Read configuration from an already existing Secret
642
secretRef: ""
643
# -- Mounted secret path by Secrets Controller, secret should be in json format
644
mountedSecret: ""
645
# -- Minimum severity: "" < info < low < medium < high < critical
646
minimumSeverity: ""
647
# -- List of sources which should send
648
sources: []
649
# -- Skip already existing report results on startup
650
skipExistingOnStartup: true
651
# -- Added as additional labels
652
customFields: {}
653
# -- Filter Results which should send to this target
654
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
655
# Filters are available for all targets except the UI
656
filter: {}
657
# -- List of channels to route results to different configurations
658
channels: []
659
jira:
660
# -- JIRA server URL
661
host: ""
662
# -- JIRA username
663
username: ""
664
# -- JIRA password (use password or apiToken, not both)
665
password: ""
666
# -- JIRA API token (use password or apiToken, not both)
667
apiToken: ""
668
# -- JIRA static labels
669
apiVersion: "v3"
670
# -- JIRA project key
671
projectKey: ""
672
# -- JIRA issue type (default: "Bug")
673
issueType: ""
674
# -- JIRA component names list
675
components: []
676
# -- JIRA static labels
677
labels: []
678
# -- JIRA summary go template, available values: result, customfield
679
# default: "{{ if result.ResourceString }}{{ result.ResourceString }}: {{ end }}Policy Violation: {{ result.Policy }}"
680
summaryTemplate: ""
681
# -- Server Certificate file path
682
# Can be added under extraVolumes
683
certificate: ""
684
# -- Skip TLS verification
685
skipTLS: false
686
# -- Read configuration from an already existing Secret
687
secretRef: ""
688
# -- Mounted secret path by Secrets Controller, secret should be in json format
689
mountedSecret: ""
690
# -- Minimum severity: "" < info < low < medium < high < critical
691
minimumSeverity: ""
692
# -- List of sources which should send
693
sources: []
694
# -- Skip already existing report results on startup
695
skipExistingOnStartup: true
696
# -- Added as additional labels
697
customFields: {}
698
# -- Filter Results which should send to this target
699
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
700
# Filters are available for all targets except the UI
701
filter: {}
702
# -- List of channels to route results to different configurations
703
channels: []
704
alertManager:
705
# -- host address
706
host: ""
707
# -- Server Certificate file path
708
# Can be added under extraVolumes
709
certificate: ""
710
# -- Skip TLS verification
711
skipTLS: false
712
# -- Additional HTTP Headers
713
headers: {}
714
# -- Read configuration from an already existing Secret
715
secretRef: ""
716
# -- Mounted secret path by Secrets Controller, secret should be in json format
717
mountedSecret: ""
718
# -- Minimum severity: "" < info < low < medium < high < critical
719
minimumSeverity: ""
720
# -- List of sources which should send
721
sources: []
722
# -- Skip already existing PolicyReportResults on startup
723
skipExistingOnStartup: true
724
# -- Added as additional labels
725
customFields: {}
726
# -- Filter Results which should send to this target
727
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
728
# Filters are available for all targets except the UI
729
filter: {}
730
# -- List of channels to route results to different configurations
731
channels: []
732
# Authentication via PodIdentity or WebIdentity are also supported
733
s3:
734
# -- (optional) S3 Access key
735
accessKeyId: ""
736
# -- (optional) S3 SecretAccess key
737
secretAccessKey: ""
738
# -- (optional) S3 Storage region
739
region: ""
740
# -- (optional) S3 Storage endpoint
741
endpoint: ""
742
# -- (required) S3 Storage bucket name
743
bucket: ""
744
# -- S3 Storage to use an S3 Bucket Key for object encryption with SSE-KMS
745
bucketKeyEnabled: false
746
# -- S3 Storage KMS Key ID for object encryption with SSE-KMS
747
kmsKeyId: ""
748
# -- S3 Storage server-side encryption algorithm used when storing this object in Amazon S3, AES256, aws:kms
749
serverSideEncryption: ""
750
# -- S3 Storage, force path style configuration
751
pathStyle: false
752
# -- Used prefix, keys will have format: s3://<bucket>/<prefix>/YYYY-MM-DD/YYYY-MM-DDTHH:mm:ss.s+01:00.json
753
prefix: ""
754
# -- Read configuration from an already existing Secret
755
secretRef: ""
756
# -- Mounted secret path by Secrets Controller, secret should be in json format
757
mountedSecret: ""
758
# -- Minimum severity: "" < info < low < medium < high < critical
759
minimumSeverity: ""
760
# -- List of sources which should send
761
sources: []
762
# -- Skip already existing report results on startup
763
skipExistingOnStartup: true
764
# -- Added as additional labels
765
customFields: {}
766
# -- Filter Results which should send to this target
767
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
768
# Filters are available for all targets except the UI
769
filter: {}
770
# -- List of channels to route results to different configurations
771
channels: []
772
# Authentication via PodIdentity or WebIdentity are also supported
773
kinesis:
774
# -- (optional) Access key
775
accessKeyId: ""
776
# -- (optional) SecretAccess key
777
secretAccessKey: ""
778
# -- (optional) Region
779
region: ""
780
# -- (optional) Endpoint
781
endpoint: ""
782
# -- (required) StreamName
783
streamName: ""
784
# -- Read configuration from an already existing Secret
785
secretRef: ""
786
# -- Mounted secret path by Secrets Controller, secret should be in json format
787
mountedSecret: ""
788
# -- Minimum severity: "" < info < low < medium < high < critical
789
minimumSeverity: ""
790
# -- List of sources which should send
791
sources: []
792
# -- Skip already existing report results on startup
793
skipExistingOnStartup: true
794
# -- Added as additional labels
795
customFields: {}
796
# -- Filter Results which should send to this target
797
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
798
# Filters are available for all targets except the UI
799
filter: {}
800
# -- List of channels to route results to different configurations
801
channels: []
802
# Authentication via PodIdentity or WebIdentity are also supported
803
securityHub:
804
# -- (optional) Access key
805
accessKeyId: ""
806
# -- (optional) SecretAccess key
807
secretAccessKey: ""
808
# -- (optional) Region
809
region: ""
810
# -- (optional) Endpoint
811
endpoint: ""
812
# -- (required) AccountId
813
accountId: ""
814
# -- (optional) Used product name, defaults to "Polilcy Reporter"
815
productName: ""
816
# -- (optional) Used company name, defaults to "Kyverno"
817
companyName: ""
818
# -- Enable cleanup listener for SecurityHub
819
synchronize: true
820
# -- Delay between AWS GetFindings API calls, to avoid hitting the API RequestLimit
821
delayInSeconds: 2
822
# -- Read configuration from an already existing Secret
823
secretRef: ""
824
# -- Mounted secret path by Secrets Controller, secret should be in json format
825
mountedSecret: ""
826
# -- Minimum severity: "" < info < low < medium < high < critical
827
minimumSeverity: ""
828
# -- List of sources which should send
829
sources: []
830
# -- Skip already existing report results on startup
831
skipExistingOnStartup: true
832
# -- Added as additional labels
833
customFields: {}
834
# -- Filter Results which should send to this target
835
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
836
# Filters are available for all targets except the UI
837
filter: {}
838
# -- List of channels to route results to different configurations
839
channels: []
840
# Authentication via PodIdentity is also supported
841
gcs:
842
# -- (optional) GCS (Google Cloud Storage) Service Account Credentials
843
credentials: ""
844
# -- (required) GCS Bucket
845
bucket: ""
846
# -- Read configuration from an already existing Secret
847
secretRef: ""
848
# -- Mounted secret path by Secrets Controller, secret should be in json format
849
mountedSecret: ""
850
# -- Minimum severity: "" < info < low < medium < high < critical
851
minimumSeverity: ""
852
# -- List of sources which should send
853
sources: []
854
# -- Skip already existing report results on startup
855
skipExistingOnStartup: true
856
# -- Added as additional labels
857
customFields: {}
858
# -- Filter Results which should send to this target
859
# Wildcars for namespaces and policies are supported, you can either define exclude or include values
860
# Filters are available for all targets except the UI
861
filter: {}
862
# -- List of channels to route results to different configurations
863
channels: []
864
# LeaderElection configuration for HA mode
865
# will be enabled when replicaCount > 1
866
leaderElection:
867
releaseOnCancel: true
868
leaseDuration: 15
869
renewDeadline: 10
870
retryPeriod: 2
871
redis:
872
# -- Enables Redis as external result cache, uses in memory cache by default
873
enabled: false
874
# -- Redis host
875
address: ""
876
# -- Redis database
877
database: 0
878
# -- Redis key prefix
879
prefix: "policy-reporter"
880
# -- (optional) Username
881
username: ""
882
# -- (optional) Password
883
password: ""
884
# -- (optional) Path to a server CA certificate
885
certificate: ""
886
# -- (optional) Path to client certificate for mutual TLS authentication
887
clientCert: ""
888
# -- (optional) Path to client key for mutual TLS authentication
889
clientKey: ""
890
# -- (optional) Secret name to pull username and password from
891
secretRef: ""
892
# -- Skip TLS verification
893
skipTLS: false
894
database:
895
# -- Use an external Database, supported: mysql, postgres, mariadb
896
type: ""
897
# -- Database
898
database: ""
899
# -- Username
900
username: ""
901
# -- Password
902
password: ""
903
# -- Host Address
904
host: ""
905
# -- Enables SSL
906
enableSSL: false
907
# -- Instead of configure the individual values you can also provide an DSN string
908
# example postgres: postgres://postgres:password@localhost:5432/postgres?sslmode=disable
909
# example mysql: root:password@tcp(localhost:3306)/test?tls=false
910
dsn: ""
911
# -- Maximum number of open connections, supported for mysql and postgres
912
maxOpenConnections: 25
913
# -- Maximum number of idle connections, supported for mysql and postgres
914
maxIdleConnections: 25
915
# -- Maximum amount of time in minutes a connection may be reused, supported for mysql and postgres
916
connectionMaxLifetime: 0
917
# -- Maximum amount of time in minutes a connection may be idle, supported for mysql and postgres
918
connectionMaxIdleTime: 0
919
# -- Timeout for database operations in seconds, supported for mysql and postgres
920
timeout: 10
921
# -- Enables database related metrics, connection status and query histogram
922
metrics: false
923
# -- Read configuration from an existing Secret
924
# supported fields: username, password, host, dsn, database
925
secretRef: ""
926
# Read configuration from a mounted Secret, required the information in JSON format
927
# supported fields: username, password, host, dsn, database
928
mountedSecret: ""
929
# Add this configuration section for periodic sync
930
periodicSync:
931
# Enable periodic sync of policy reports
932
enabled: false
933
# Interval in minutes for periodic sync
934
interval: 30
935
autoMemoryLimit:
936
# Enable automatic GOMEMLIMIT configuration based on container or system memory
937
enabled: true
938
# The ratio of reserved GOMEMLIMIT memory to the detected maximum container or system memory. Must be greater than 0 and less than or equal to 1.
939
ratio: 0.9
940
# enabled if replicaCount > 1
941
podDisruptionBudget:
942
# -- Configures the minimum available pods for policy-reporter disruptions.
943
# Cannot be used if `maxUnavailable` is set.
944
minAvailable: 1
945
# -- Configures the maximum unavailable pods for policy-reporter disruptions.
946
# Cannot be used if `minAvailable` is set.
947
maxUnavailable:
948
# -- Node labels for pod assignment
949
# ref: https://kubernetes.io/docs/user-guide/node-selection/
950
nodeSelector: {}
951
# -- Tolerations for pod assignment
952
# ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
953
tolerations: []
954
# -- Anti-affinity to disallow deploying client and master nodes on the same worker node
955
affinity: {}
956
# -- Topology Spread Constraints to better spread pods
957
topologySpreadConstraints: []
958
# -- Deployment livenessProbe for policy-reporter
959
livenessProbe:
960
httpGet:
961
path: /healthz
962
port: http
963
# -- Deployment readinessProbe for policy-reporter
964
readinessProbe:
965
httpGet:
966
path: /ready
967
port: http
968
extraVolumes:
969
# -- Deployment volumeMounts
970
volumeMounts: []
971
# -- Deployment values
972
volumes: []
973
# -- If set the volume for sqlite is freely configurable below "- name: sqlite". If no value is set an emptyDir is used.
974
sqliteVolume: {}
975
# emptyDir:
976
# sizeLimit: 10Mi
977
978
# -- Allow additional env variables to be added
979
envVars: []
980
# -- Allow custom configuration of the /tmp volume
981
tmpVolume: {}
982
ui:
983
# -- (bool) Enable Policy Reporter UI
984
enabled: false
985
image:
986
# -- (string) Image registry
987
registry: cgr.dev
988
# -- (string) Image repository
989
repository: chainguard-private/kyverno-policy-reporter-ui-fips
990
# -- (string) Image PullPolicy
991
pullPolicy: IfNotPresent
992
# -- (string) Image tag
993
tag: 2.9.0-r4@sha256:453116a5618367c85b445451d6efe6c67dd273238a0d05d8151e18ef62cdcd0d
994
crds:
995
# -- Install UI CustomBoard CRDs
996
customBoard: false
997
# -- Install UI CustomBoard CRDs
998
cluster: false
999
# -- Deployment replica count
1000
replicaCount: 1
1001
# -- Deployment priorityClassName
1002
priorityClassName: ""
1003
logging:
1004
# -- Enables external api request logging
1005
api: false
1006
# -- Enables server access logging
1007
server: false
1008
# -- Log encoding
1009
# possible encodings are console and json
1010
encoding: console
1011
# -- Log level
1012
# default info
1013
logLevel: 0
1014
server:
1015
# -- Application port
1016
port: 8080
1017
# -- Enabled CORS header
1018
cors: true
1019
# -- Overwrites Request Host with Proxy Host and adds `X-Forwarded-Host` and `X-Origin-Host` headers
1020
overwriteHost: true
1021
# -- session configuration
1022
sessions:
1023
storage: filesystem
1024
tempDir: /tmp
1025
openIDConnect:
1026
# -- Enable openID Connect authentication
1027
enabled: false
1028
# -- OpenID Connect Discovery URL
1029
discoveryUrl: ""
1030
# -- OpenID Connect Callback URL
1031
callbackUrl: ""
1032
# -- OpenID Connect ClientID
1033
clientId: ""
1034
# -- OpenID Connect ClientSecret
1035
clientSecret: ""
1036
# -- Optional Group Claim to map user groups to the profile
1037
# groups can be used to define access control for clusters, boards and custom boards.
1038
groupClaim: ""
1039
# -- OpenID Connect allowed Scopes
1040
scopes: []
1041
# -- Enable PKCE (Proof Key for Code Exchange) for OpenID Connect authentication
1042
pkce: false
1043
# -- Skip TLS Verification
1044
skipTLS: false
1045
# -- TLS Certificate file path
1046
certificate: ""
1047
# -- Secret to rea
1048
# -- Provide OpenID Connect configuration via Secret
1049
# supported keys: `discoveryUrl`, `clientId`, `clientSecret`, `certificate`, `skipTLS`
1050
secretRef: ""
1051
oauth:
1052
# -- Enable openID Connect authentication
1053
enabled: false
1054
# -- OAuth2 Provider
1055
# supported: amazon, gitlab, github, apple, google, yandex, azuread
1056
provider: ""
1057
# -- OpenID Connect Callback URL
1058
callbackUrl: ""
1059
# -- OpenID Connect ClientID
1060
clientId: ""
1061
# -- OpenID Connect ClientSecret
1062
clientSecret: ""
1063
# -- OpenID Connect allowed Scopes
1064
scopes: []
1065
# -- Provide OpenID Connect configuration via Secret
1066
# supported keys: `provider`, `clientId`, `clientSecret`
1067
secretRef: ""
1068
# -- optional banner text
1069
banner: ""
1070
logo:
1071
# -- custom logo path
1072
path: ""
1073
# -- disable logo entirely
1074
disabled: false
1075
# -- DisplayMode dark/light/colorblind/colorblinddark
1076
# uses the OS configured preferred color scheme as default
1077
displayMode: ""
1078
# -- Configure access control for all default boards.
1079
boards: {}
1080
# accessControl:
1081
# groups: []
1082
# emails: []
1083
1084
# -- Additional customizable dashboards
1085
customBoards: []
1086
# - name: Team A
1087
# namespaces:
1088
# # -- list of displayed namespaces
1089
# list: []
1090
# # -- selector for displayed namespaces
1091
# labelSelector:
1092
# team: team-a # equal
1093
# workload: * # label exists
1094
# infra: !* # label does not exist
1095
# env: dev,test # label value is one of [dev, test]
1096
# sources:
1097
# # -- list of displayed sources
1098
# list: []
1099
# clusterScope:
1100
# # -- display cluster scoped resources and results
1101
# enabled: false
1102
# display: ""
1103
# filter:
1104
# include:
1105
# results: []
1106
# severities: []
1107
# clusterKinds: []
1108
# namespaceKinds: []
1109
1110
# -- source specific configurations
1111
sources: []
1112
# -- kyverno specific UI configurations
1113
# - name: kyverno
1114
# -- show results per category, other option: severity
1115
# type: result
1116
# -- enabled action button to generate PolicyExceptions from the UI
1117
# exceptions: false
1118
# -- exclude results or (cluster)kinds per source
1119
# excludes:
1120
# results:
1121
# - warn
1122
# - error
1123
1124
## -- Default Cluster name
1125
name: Default
1126
# -- Connected Policy Reporter APIs
1127
clusters: []
1128
# - name: default
1129
# host: http://policy-reporter:8080
1130
# secretRef: ""
1131
# skipTLS: false
1132
# certificate: ""
1133
# plugins:
1134
# - name: kyverno
1135
# host: http://policy-reporter-kyverno-plugin:8080
1136
1137
# -- Image pull secrets for image verification policies, this will define the `--imagePullSecrets` argument
1138
imagePullSecrets: []
1139
# regcred:
1140
# registry: foo.example.com
1141
# username: foobar
1142
# password: secret
1143
1144
serviceAccount:
1145
# -- Create ServiceAccount
1146
create: true
1147
# -- Enable ServiceAccount automount
1148
automount: true
1149
# -- Annotations for the ServiceAccount
1150
annotations: {}
1151
# -- The ServiceAccount name
1152
name: ""
1153
# -- Add sidecar containers to the UI deployment
1154
# sidecarContainers:
1155
# oauth-proxy:
1156
# image: quay.io/oauth2-proxy/oauth2-proxy:v7.6.0
1157
# args:
1158
# - --upstream=http://127.0.0.1:8080
1159
# - --http-address=0.0.0.0:8081
1160
# - ...
1161
# ports:
1162
# - containerPort: 8081
1163
# name: oauth-proxy
1164
# protocol: TCP
1165
# resources: {}
1166
sidecarContainers: {}
1167
# -- Additional annotations to add to each pod
1168
podAnnotations: {}
1169
# -- Additional labels to add to each pod
1170
podLabels: {}
1171
# -- Custom selector labels, overwrites the default set
1172
selectorLabels: {}
1173
# -- Deployment update strategy.
1174
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
1175
updateStrategy: {}
1176
# rollingUpdate:
1177
# maxSurge: 1
1178
# maxUnavailable: 40%
1179
# type: RollingUpdate
1180
1181
# -- The number of revisions to keep
1182
revisionHistoryLimit: 10
1183
# -- Security context for the pod
1184
podSecurityContext:
1185
runAsUser: 1234
1186
runAsGroup: 1234
1187
# -- Allow additional env variables to be added
1188
envVars: []
1189
# -- Allow custom configuration of the /tmp volume
1190
tmpVolume: {}
1191
rbac:
1192
# -- Create RBAC resources
1193
enabled: true
1194
securityContext:
1195
runAsUser: 1234
1196
runAsNonRoot: true
1197
privileged: false
1198
allowPrivilegeEscalation: false
1199
readOnlyRootFilesystem: true
1200
capabilities:
1201
drop:
1202
- ALL
1203
seccompProfile:
1204
type: RuntimeDefault
1205
# -- Deployment livenessProbe for policy-reporter-ui
1206
livenessProbe:
1207
httpGet:
1208
path: /healthz
1209
port: http
1210
# -- Deployment readinessProbe for policy-reporter-ui
1211
readinessProbe:
1212
httpGet:
1213
path: /healthz
1214
port: http
1215
service:
1216
# -- Service type.
1217
type: ClusterIP
1218
# -- Service port.
1219
port: 8080
1220
# -- Service annotations.
1221
annotations: {}
1222
# -- Service labels.
1223
labels: {}
1224
# -- Additional service ports for e.g. Sidecars # - name: authenticated
1225
# additionalPorts:
1226
# - name: authenticated
1227
# port: 8081
1228
# targetPort: 8081
1229
additionalPorts: []
1230
ingress:
1231
# -- Create ingress resource.
1232
enabled: false
1233
# -- Redirect ingress to an additional defined port on the service
1234
port: null
1235
# -- Ingress class name.
1236
className: ""
1237
# -- Ingress labels.
1238
labels: {}
1239
# -- Ingress annotations.
1240
annotations: {}
1241
# kubernetes.io/ingress.class: nginx
1242
# kubernetes.io/tls-acme: "true"
1243
# -- List of ingress host configurations.
1244
hosts: []
1245
# - host: chart-example.local
1246
# paths:
1247
# - path: /
1248
# pathType: ImplementationSpecific
1249
# -- List of ingress TLS configurations.
1250
tls: []
1251
# - secretName: chart-example-tls
1252
# hosts:
1253
# - chart-example.local
1254
httproute:
1255
# -- Enable HTTPRoute resource (Gateway API alternative to Ingress)
1256
# Requires Gateway API CRDs (v1) installed in cluster
1257
# https://gateway-api.sigs.k8s.io/
1258
enabled: false
1259
# -- Additional HTTPRoute labels
1260
labels: {}
1261
# -- Additional HTTPRoute annotations
1262
annotations: {}
1263
# -- Gateway API parentRefs (list of Gateway references)
1264
# Must reference an existing Gateway resource
1265
parentRefs: []
1266
# - name: example-gateway
1267
# namespace: gateway-system
1268
# sectionName: https
1269
# -- List of hostnames for HTTPRoute
1270
hostnames: []
1271
# - policy-reporter-ui.example.com
1272
# -- HTTPRoute rules configuration
1273
# Allows advanced routing with matches and filters
1274
rules:
1275
- matches:
1276
- path:
1277
type: PathPrefix
1278
value: /
1279
# Optional filters:
1280
# filters:
1281
# - type: RequestHeaderModifier
1282
# requestHeaderModifier:
1283
# add:
1284
# - name: X-Custom-Header
1285
# value: value
1286
# Optional timeouts configuration:
1287
# timeouts:
1288
# request: 30s
1289
# backendRequest: 30s
1290
networkPolicy:
1291
# -- When true, use a NetworkPolicy to allow ingress to the webhook
1292
# This is useful on clusters using Calico and/or native k8s network policies in a default-deny setup.
1293
enabled: false
1294
# -- A list of valid from selectors according to https://kubernetes.io/docs/concepts/services-networking/network-policies.
1295
# Enables Kubernetes API Server by default
1296
egress:
1297
- ports:
1298
- protocol: TCP
1299
port: 6443
1300
# -- A list of valid from selectors according to https://kubernetes.io/docs/concepts/services-networking/network-policies.
1301
ingress: []
1302
# -- Resource constraints
1303
resources: {}
1304
# limits:
1305
# cpu: 100m
1306
# memory: 128Mi
1307
# requests:
1308
# cpu: 100m
1309
# memory: 128Mi
1310
1311
# enabled if replicaCount > 1
1312
podDisruptionBudget:
1313
# -- Configures the minimum available pods for kyvernoPlugin disruptions.
1314
# Cannot be used if `maxUnavailable` is set.
1315
minAvailable: 1
1316
# -- Configures the maximum unavailable pods for kyvernoPlugin disruptions.
1317
# Cannot be used if `minAvailable` is set.
1318
maxUnavailable:
1319
# -- Node labels for pod assignment
1320
nodeSelector: {}
1321
# -- List of node taints to tolerate
1322
tolerations: []
1323
# -- Affinity constraints.
1324
affinity: {}
1325
# -- Pod Topology Spread Constraints for the policy-reporter-ui.
1326
topologySpreadConstraints: {}
1327
extraVolumes:
1328
# -- Deployment volumeMounts
1329
volumeMounts: []
1330
# -- Deployment values
1331
volumes: []
1332
# -- Extra configuration options appended to UI settings
1333
extraConfig: {}
1334
plugin:
1335
kyverno:
1336
# -- (bool) Enable Kyverno Plugin
1337
enabled: false
1338
image:
1339
# -- (string) Image registry
1340
registry: cgr.dev
1341
# -- (string) Image repository
1342
repository: chainguard-private/kyverno-policy-reporter-plugin-kyverno-fips
1343
# -- (string) Image PullPolicy
1344
pullPolicy: IfNotPresent
1345
# -- (string) Image tag
1346
tag: 0.7.2-r6@sha256:e4a1016922117ba1aa8ee1f861a78ded5875db5717d3aebfb62e5e61b4b5054e
1347
# -- Deployment replica count
1348
replicaCount: 1
1349
# -- Deployment priorityClassName
1350
priorityClassName: ""
1351
logging:
1352
# -- Enables external API request logging
1353
api: false
1354
# -- Enables Server access logging
1355
server: false
1356
# -- log encoding
1357
# possible encodings are console and json
1358
encoding: console
1359
# -- log level
1360
# default info
1361
logLevel: 0
1362
server:
1363
# -- Application port
1364
port: 8080
1365
blockReports:
1366
# -- Enables he BlockReport feature
1367
enabled: false
1368
# -- Watches for Kyverno Events in the configured namespace
1369
# leave blank to watch in all namespaces
1370
eventNamespace: default
1371
# -- Used value for the source field in the created (Cluster)PolicyReports
1372
source: Kyverno Event
1373
results:
1374
# -- Max items per PolicyReport resource
1375
maxPerReport: 200
1376
# -- Keep only the latest of duplicated events
1377
keepOnlyLatest: false
1378
policyReport:
1379
# -- Labels for all created (Cluster)PolicyReports
1380
labels: []
1381
# -- Annotations for all created (Cluster)PolicyReports
1382
annotations: []
1383
# -- Image pull secrets for image verification policies, this will define the `--imagePullSecrets` argument
1384
imagePullSecrets: []
1385
# regcred:
1386
# registry: foo.example.com
1387
# username: foobar
1388
# password: secret
1389
1390
serviceAccount:
1391
# -- Create ServiceAccount
1392
create: true
1393
# -- Enable ServiceAccount automount
1394
automount: true
1395
# -- Annotations for the ServiceAccount
1396
annotations: {}
1397
# -- The ServiceAccount name
1398
name: ""
1399
# -- Additional annotations to add to each pod
1400
podAnnotations: {}
1401
# -- Additional labels to add to each pod
1402
podLabels: {}
1403
# -- Custom selector labels, overwrites the default set
1404
selectorLabels: {}
1405
# -- Deployment update strategy.
1406
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
1407
updateStrategy: {}
1408
# rollingUpdate:
1409
# maxSurge: 1
1410
# maxUnavailable: 40%
1411
# type: RollingUpdate
1412
1413
# -- The number of revisions to keep
1414
revisionHistoryLimit: 10
1415
# -- Security context for the pod
1416
podSecurityContext:
1417
runAsUser: 1234
1418
runAsGroup: 1234
1419
# -- Allow additional env variables to be added
1420
envVars: []
1421
rbac:
1422
# -- Create RBAC resources
1423
enabled: true
1424
securityContext:
1425
runAsUser: 1234
1426
runAsNonRoot: true
1427
privileged: false
1428
allowPrivilegeEscalation: false
1429
readOnlyRootFilesystem: true
1430
capabilities:
1431
drop:
1432
- ALL
1433
seccompProfile:
1434
type: RuntimeDefault
1435
service:
1436
# -- Service type.
1437
type: ClusterIP
1438
# -- Service port.
1439
port: 8080
1440
# -- Service annotations.
1441
annotations: {}
1442
# -- Service labels.
1443
labels: {}
1444
ingress:
1445
# -- Create ingress resource.
1446
enabled: false
1447
# -- Ingress class name.
1448
className: ""
1449
# -- Ingress labels.
1450
labels: {}
1451
# -- Ingress annotations.
1452
annotations: {}
1453
# kubernetes.io/ingress.class: nginx
1454
# kubernetes.io/tls-acme: "true"
1455
# -- List of ingress host configurations.
1456
hosts: []
1457
# - host: chart-example.local
1458
# paths:
1459
# - path: /
1460
# pathType: ImplementationSpecific
1461
# -- List of ingress TLS configurations.
1462
tls: []
1463
# - secretName: chart-example-tls
1464
# hosts:
1465
# - chart-example.local
1466
networkPolicy:
1467
# -- When true, use a NetworkPolicy to allow ingress to the webhook
1468
# This is useful on clusters using Calico and/or native k8s network policies in a default-deny setup.
1469
enabled: false
1470
# -- A list of valid from selectors according to https://kubernetes.io/docs/concepts/services-networking/network-policies.
1471
# Enables Kubernetes API Server by default
1472
egress:
1473
- ports:
1474
- protocol: TCP
1475
port: 6443
1476
# -- A list of valid from selectors according to https://kubernetes.io/docs/concepts/services-networking/network-policies.
1477
ingress: []
1478
httproute:
1479
# -- Enable HTTPRoute resource (Gateway API alternative to Ingress)
1480
# Requires Gateway API CRDs (v1) installed in cluster
1481
# https://gateway-api.sigs.k8s.io/
1482
enabled: false
1483
# -- Additional HTTPRoute labels
1484
labels: {}
1485
# -- Additional HTTPRoute annotations
1486
annotations: {}
1487
# -- Gateway API parentRefs (list of Gateway references)
1488
# Must reference an existing Gateway resource
1489
parentRefs: []
1490
# - name: example-gateway
1491
# namespace: gateway-system
1492
# sectionName: https
1493
# -- List of hostnames for HTTPRoute
1494
hostnames: []
1495
# - policy-reporter-kyverno-plugin.example.com
1496
# -- HTTPRoute rules configuration
1497
# Allows advanced routing with matches and filters
1498
rules:
1499
- matches:
1500
- path:
1501
type: PathPrefix
1502
value: /
1503
# Optional filters:
1504
# filters:
1505
# - type: RequestHeaderModifier
1506
# requestHeaderModifier:
1507
# add:
1508
# - name: X-Custom-Header
1509
# value: value
1510
# Optional timeouts configuration:
1511
# timeouts:
1512
# request: 30s
1513
# backendRequest: 30s
1514
# -- Resource constraints
1515
resources: {}
1516
# limits:
1517
# cpu: 100m
1518
# memory: 128Mi
1519
# requests:
1520
# cpu: 100m
1521
# memory: 128Mi
1522
1523
# -- Deployment livenessProbe for policy-reporter-kyverno-plugin
1524
livenessProbe:
1525
httpGet:
1526
path: /v1/policies
1527
port: http
1528
# -- Deployment readinessProbe for policy-reporter-kyverno-plugin
1529
readinessProbe:
1530
httpGet:
1531
path: /v1/policies
1532
port: http
1533
# required for HA mode
1534
# if "blockReports" is disabled, leaderElection is also disabled automatically
1535
# will be enabled when replicaCount > 1
1536
leaderElection:
1537
# -- Lock Name
1538
lockName: kyverno-plugin
1539
# -- Released lock when the run context is cancelled.
1540
releaseOnCancel: true
1541
# -- LeaseDuration is the duration that non-leader candidates will wait to force acquire leadership.
1542
leaseDuration: 15
1543
# -- RenewDeadline is the duration that the acting master will retry refreshing leadership before giving up.
1544
renewDeadline: 10
1545
# -- RetryPeriod is the duration the LeaderElector clients should wait between tries of actions.
1546
retryPeriod: 2
1547
# enabled if replicaCount > 1
1548
podDisruptionBudget:
1549
# -- Configures the minimum available pods for kyvernoPlugin disruptions.
1550
# Cannot be used if `maxUnavailable` is set.
1551
minAvailable: 1
1552
# -- Configures the maximum unavailable pods for kyvernoPlugin disruptions.
1553
# Cannot be used if `minAvailable` is set.
1554
maxUnavailable:
1555
# -- Node labels for pod assignment
1556
nodeSelector: {}
1557
# -- List of node taints to tolerate
1558
tolerations: []
1559
# -- Affinity constraints.
1560
affinity: {}
1561
# -- Pod Topology Spread Constraints for the kyverno plugin.
1562
topologySpreadConstraints: {}
1563
extraVolumes:
1564
# -- Deployment volumeMounts
1565
volumeMounts: []
1566
# -- Deployment values
1567
volumes: []
1568
# -- Extra configuration options appended to kyverno plugin settings
1569
extraConfig: {}
1570
trivy:
1571
# -- (bool) Enable Trivy Operator Plugin
1572
enabled: false
1573
image:
1574
# -- (string) Image registry
1575
registry: cgr.dev
1576
# -- (string) Image repository
1577
repository: chainguard-private/kyverno-policy-reporter-plugin-trivy-fips
1578
# -- (string) Image PullPolicy
1579
pullPolicy: IfNotPresent
1580
# -- (string) Image tag
1581
# Defaults to `Chart.AppVersion` if omitted
1582
tag: 0.5.2-r3@sha256:08805de1ab7926fdedb2affaefda57c3a3a13f2d0240d042cb3189855929b336
1583
cli:
1584
image:
1585
# -- (string) Image registry
1586
registry: cgr.dev
1587
# -- (string) Image repository
1588
repository: chainguard-private/trivy-fips
1589
# -- (string) Image PullPolicy
1590
pullPolicy: IfNotPresent
1591
# -- (string) Image tag
1592
# Defaults to `Chart.AppVersion` if omitted
1593
tag: 0.76.1-r0@sha256:15c33fd5317e12a5c3b47440fac5d361662d80607d49702c21a88125fccc63fa
1594
# -- Additional container args.
1595
extraArgs: {}
1596
cveawg:
1597
# -- (bool) disable external CVEAWG API calls.
1598
disable: false
1599
github:
1600
# -- (bool) disable GitHub API calls.
1601
disable: false
1602
# -- (string) optional github token for authenticated GitHub API calls.
1603
token: ""
1604
# -- If set the volume for dbVolume is freely configurable below "- name: dbVolume". If no value is set an emptyDir is used.
1605
dbVolume: {}
1606
# emptyDir:
1607
# sizeLimit: 10Mi
1608
1609
# -- If set the volume for tmpVolume is freely configurable below "- name: tmpVolume". If no value is set an emptyDir is used.
1610
tmpVolume: {}
1611
# emptyDir:
1612
# sizeLimit: 10Mi
1613
1614
# -- Deployment replica count
1615
replicaCount: 1
1616
# -- Deployment priorityClassName
1617
priorityClassName: ""
1618
logging:
1619
# -- Enables external API request logging
1620
api: false
1621
# -- Enables Server access logging
1622
server: false
1623
# -- log encoding
1624
# possible encodings are console and json
1625
encoding: console
1626
# -- log level
1627
# default info
1628
logLevel: 0
1629
server:
1630
# -- Application port
1631
port: 8080
1632
policyReporter:
1633
# -- Skip TLS Verification
1634
skipTLS: false
1635
# -- TLS Certificate file path
1636
certificate: ""
1637
# -- Secret to read the API configuration from
1638
# supports `host`, `certificate`, `skipTLS`, `username`, `password` key
1639
secretRef: ""
1640
# -- Image pull secrets for image verification policies, this will define the `--imagePullSecrets` argument
1641
imagePullSecrets: []
1642
# regcred:
1643
# registry: foo.example.com
1644
# username: foobar
1645
# password: secret
1646
1647
serviceAccount:
1648
# -- Create ServiceAccount
1649
create: true
1650
# -- Enable ServiceAccount automount
1651
automount: true
1652
# -- Annotations for the ServiceAccount
1653
annotations: {}
1654
# -- The ServiceAccount name
1655
name: ""
1656
# -- Additional annotations to add to each pod
1657
podAnnotations: {}
1658
# -- Additional labels to add to each pod
1659
podLabels: {}
1660
# -- Custom selector labels, overwrites the default set
1661
selectorLabels: {}
1662
# -- Deployment update strategy.
1663
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
1664
updateStrategy: {}
1665
# rollingUpdate:
1666
# maxSurge: 1
1667
# maxUnavailable: 40%
1668
# type: RollingUpdate
1669
1670
# -- The number of revisions to keep
1671
revisionHistoryLimit: 10
1672
# -- Security context for the pod
1673
podSecurityContext:
1674
runAsUser: 1234
1675
runAsGroup: 1234
1676
# -- Deployment livenessProbe for policy-reporter-trivy-plugin
1677
livenessProbe:
1678
timeoutSeconds: 3
1679
httpGet:
1680
path: /vulnr/v1/policies
1681
port: http
1682
# -- Deployment readinessProbe for policy-reporter-trivy-plugin
1683
readinessProbe:
1684
timeoutSeconds: 3
1685
httpGet:
1686
path: /vulnr/v1/policies
1687
port: http
1688
# -- Allow additional env variables to be added
1689
envVars: []
1690
rbac:
1691
# -- Create RBAC resources
1692
enabled: true
1693
securityContext:
1694
runAsUser: 1234
1695
runAsNonRoot: true
1696
privileged: false
1697
allowPrivilegeEscalation: false
1698
readOnlyRootFilesystem: true
1699
capabilities:
1700
drop:
1701
- ALL
1702
seccompProfile:
1703
type: RuntimeDefault
1704
service:
1705
# -- Service type.
1706
type: ClusterIP
1707
# -- Service port.
1708
port: 8080
1709
# -- Service annotations.
1710
annotations: {}
1711
# -- Service labels.
1712
labels: {}
1713
ingress:
1714
# -- Create ingress resource.
1715
enabled: false
1716
# -- Ingress class name.
1717
className: ""
1718
# -- Ingress labels.
1719
labels: {}
1720
# -- Ingress annotations.
1721
annotations: {}
1722
# kubernetes.io/ingress.class: nginx
1723
# kubernetes.io/tls-acme: "true"
1724
# -- List of ingress host configurations.
1725
hosts: []
1726
# - host: chart-example.local
1727
# paths:
1728
# - path: /
1729
# pathType: ImplementationSpecific
1730
# -- List of ingress TLS configurations.
1731
tls: []
1732
# - secretName: chart-example-tls
1733
# hosts:
1734
# - chart-example.local
1735
httproute:
1736
# -- Enable HTTPRoute resource (Gateway API alternative to Ingress)
1737
# Requires Gateway API CRDs (v1) installed in cluster
1738
# https://gateway-api.sigs.k8s.io/
1739
enabled: false
1740
# -- Additional HTTPRoute labels
1741
labels: {}
1742
# -- Additional HTTPRoute annotations
1743
annotations: {}
1744
# -- Gateway API parentRefs (list of Gateway references)
1745
# Must reference an existing Gateway resource
1746
parentRefs: []
1747
# - name: example-gateway
1748
# namespace: gateway-system
1749
# sectionName: https
1750
# -- List of hostnames for HTTPRoute
1751
hostnames: []
1752
# - policy-reporter-kyverno-plugin.example.com
1753
# -- HTTPRoute rules configuration
1754
# Allows advanced routing with matches and filters
1755
rules:
1756
- matches:
1757
- path:
1758
type: PathPrefix
1759
value: /
1760
# Optional filters:
1761
# filters:
1762
# - type: RequestHeaderModifier
1763
# requestHeaderModifier:
1764
# add:
1765
# - name: X-Custom-Header
1766
# value: value
1767
# Optional timeouts configuration:
1768
# timeouts:
1769
# request: 30s
1770
# backendRequest: 30s
1771
networkPolicy:
1772
# -- When true, use a NetworkPolicy to allow ingress to the webhook
1773
# This is useful on clusters using Calico and/or native k8s network policies in a default-deny setup.
1774
enabled: false
1775
# -- A list of valid from selectors according to https://kubernetes.io/docs/concepts/services-networking/network-policies.
1776
# Enables Kubernetes API Server by default
1777
egress:
1778
- ports:
1779
- protocol: TCP
1780
port: 6443
1781
# -- A list of valid from selectors according to https://kubernetes.io/docs/concepts/services-networking/network-policies.
1782
ingress: []
1783
# -- Resource constraints
1784
resources: {}
1785
# limits:
1786
# cpu: 100m
1787
# memory: 128Mi
1788
# requests:
1789
# cpu: 100m
1790
# memory: 128Mi
1791
1792
# enabled if replicaCount > 1
1793
podDisruptionBudget:
1794
# -- Configures the minimum available pods for kyvernoPlugin disruptions.
1795
# Cannot be used if `maxUnavailable` is set.
1796
minAvailable: 1
1797
# -- Configures the maximum unavailable pods for kyvernoPlugin disruptions.
1798
# Cannot be used if `minAvailable` is set.
1799
maxUnavailable:
1800
# -- Node labels for pod assignment
1801
nodeSelector: {}
1802
# -- List of node taints to tolerate
1803
tolerations: []
1804
# -- Affinity constraints.
1805
affinity: {}
1806
# -- Pod Topology Spread Constraints for the trivy plugin.
1807
topologySpreadConstraints: {}
1808
extraVolumes:
1809
# -- Deployment volumeMounts
1810
volumeMounts: []
1811
# -- Deployment values
1812
volumes: []
1813
# -- Extra configuration options appended to trivy plugin settings
1814
extraConfig: {}
1815
vap:
1816
# -- (bool) Enable ValidatingAdmissionPolicy Plugin
1817
enabled: false
1818
image:
1819
# -- (string) Image registry
1820
registry: ghcr.io
1821
# -- (string) Image repository
1822
repository: kyverno/policy-reporter/vap-plugin
1823
# -- (string) Image PullPolicy
1824
pullPolicy: IfNotPresent
1825
# -- (string) Image tag
1826
tag: "0.1.2"
1827
replicaCount: 1
1828
# -- Deployment priorityClassName
1829
priorityClassName: ""
1830
# -- Image pull secrets for image verification policies, this will define the `--imagePullSecrets` argument
1831
imagePullSecrets: []
1832
# regcred:
1833
# registry: foo.example.com
1834
# username: foobar
1835
# password: secret
1836
1837
rbac:
1838
# -- Create RBAC resources
1839
enabled: true
1840
# -- Additional rules to add to the ClusterRole
1841
extraResources: []
1842
networkPolicy:
1843
# -- When true, use a NetworkPolicy to allow ingress to the webhook
1844
# This is useful on clusters using Calico and/or native k8s network policies in a default-deny setup.
1845
enabled: false
1846
# -- A list of valid from selectors according to https://kubernetes.io/docs/concepts/services-networking/network-policies.
1847
# Enables Kubernetes API Server by default
1848
egress:
1849
- ports:
1850
- protocol: TCP
1851
port: 6443
1852
# -- A list of valid from selectors according to https://kubernetes.io/docs/concepts/services-networking/network-policies.
1853
ingress:
1854
- ports:
1855
- protocol: TCP
1856
port: 8443
1857
- ports:
1858
- protocol: TCP
1859
port: 8080
1860
# -- Additional annotations to add to each pod
1861
podAnnotations: {}
1862
# -- Additional labels to add to each pod
1863
podLabels: {}
1864
# -- Custom selector labels, overwrites the default set
1865
selectorLabels: {}
1866
# -- Deployment update strategy.
1867
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
1868
updateStrategy: {}
1869
# rollingUpdate:
1870
# maxSurge: 1
1871
# maxUnavailable: 40%
1872
# type: RollingUpdate
1873
1874
# -- The number of revisions to keep
1875
revisionHistoryLimit: 10
1876
# -- Security context for the pod
1877
podSecurityContext:
1878
runAsUser: 1234
1879
runAsGroup: 1234
1880
# -- Allow additional env variables to be added
1881
envVars: []
1882
securityContext:
1883
runAsUser: 1234
1884
runAsNonRoot: true
1885
privileged: false
1886
allowPrivilegeEscalation: false
1887
readOnlyRootFilesystem: true
1888
capabilities:
1889
drop:
1890
- ALL
1891
seccompProfile:
1892
type: RuntimeDefault
1893
# -- Deployment livenessProbe for policy-reporter-vap-plugin
1894
livenessProbe:
1895
timeoutSeconds: 3
1896
httpGet:
1897
path: /v1/policies
1898
port: api
1899
# -- Deployment readinessProbe for policy-reporter-vap-plugin
1900
readinessProbe:
1901
timeoutSeconds: 3
1902
httpGet:
1903
path: /v1/policies
1904
port: api
1905
serviceAccount:
1906
# -- Create ServiceAccount
1907
create: true
1908
# -- Enable ServiceAccount automount
1909
automount: true
1910
# -- Annotations for the ServiceAccount
1911
annotations: {}
1912
# -- The ServiceAccount name
1913
name: ""
1914
service:
1915
# -- Service type.
1916
type: ClusterIP
1917
# -- Service port.
1918
port: 8443
1919
# -- Service annotations.
1920
annotations: {}
1921
# -- Service labels.
1922
labels: {}
1923
# -- Fixed ClusterIP for the service
1924
clusterIP: ""
1925
# enabled if replicaCount > 1
1926
podDisruptionBudget:
1927
# -- Configures the minimum available pods for kyvernoPlugin disruptions.
1928
# Cannot be used if `maxUnavailable` is set.
1929
minAvailable: 1
1930
# -- Configures the maximum unavailable pods for kyvernoPlugin disruptions.
1931
# Cannot be used if `minAvailable` is set.
1932
maxUnavailable:
1933
# TLS is required: the Kubernetes audit webhook backend only accepts HTTPS.
1934
# Either point certManager at an Issuer you control, or set
1935
# tls.existingSecret to a pre-provisioned TLS secret with tls.crt/tls.key.
1936
tls:
1937
certManager:
1938
enabled: false
1939
issuerRef:
1940
name: ""
1941
kind: ClusterIssuer
1942
existingSecret: ""
1943
# Set to false to disable the audit webhook receiver entirely, e.g. for a
1944
# replica that only serves the plugin API (see config.api.enabled below).
1945
# When disabled, the TLS listener port and volume are omitted too.
1946
server:
1947
enabled: true
1948
webhook:
1949
bufferSize: 1000
1950
workers: 4
1951
report:
1952
severity: ""
1953
category: ""
1954
labels: {}
1955
annotations: {}
1956
# Whether Deny-action results (requests Kubernetes actually blocked)
1957
# are persisted at all - see deploy/config.example.yaml for the
1958
# rationale behind defaulting to false.
1959
reportDenied: false
1960
reconcile:
1961
interval: 10m
1962
orphanTTL: 24h
1963
# Policy Reporter plugin API (list/get ValidatingAdmissionPolicy details
1964
# for the Policy Reporter UI) - a separate plain-HTTP listener from the
1965
# TLS audit webhook receiver above.
1966
# Set to false to disable the plugin API server entirely, e.g. for a
1967
# replica that only receives the audit webhook (see config.server.enabled
1968
# above).
1969
api:
1970
enabled: true
1971
port: 8080
1972
debug: false
1973
logging:
1974
level: info
1975
development: false
1976
# Automatically sets GOMEMLIMIT based on the container's memory limit (or
1977
# the host's memory when unset), so the Go runtime GCs proactively before
1978
# hitting an OOM kill instead of waiting for GC pressure alone to trigger.
1979
autoMemoryLimit:
1980
enabled: true
1981
# Fraction of the detected memory to reserve as GOMEMLIMIT. Must be
1982
# greater than 0 and less than or equal to 1.
1983
ratio: 0.9
1984
# -- Resource constraints
1985
resources: {}
1986
# limits:
1987
# cpu: 100m
1988
# memory: 128Mi
1989
# requests:
1990
# cpu: 100m
1991
# memory: 128Mi
1992
1993
# -- Node labels for pod assignment
1994
nodeSelector: {}
1995
# -- List of node taints to tolerate
1996
tolerations: []
1997
# -- Affinity constraints.
1998
affinity: {}
1999
# -- Pod Topology Spread Constraints for the kyverno plugin.
2000
topologySpreadConstraints: {}
2001
extraVolumes:
2002
# -- Deployment volumeMounts
2003
volumeMounts: []
2004
# -- Deployment values
2005
volumes: []
2006
httproute:
2007
# -- Enable HTTPRoute resource (Gateway API alternative to Ingress)
2008
# Requires Gateway API CRDs (v1) installed in cluster
2009
# https://gateway-api.sigs.k8s.io/
2010
enabled: false
2011
# -- Additional HTTPRoute labels
2012
labels: {}
2013
# -- Additional HTTPRoute annotations
2014
annotations: {}
2015
# -- Gateway API parentRefs (list of Gateway references)
2016
# Must reference an existing Gateway resource
2017
parentRefs: []
2018
# - name: example-gateway
2019
# namespace: gateway-system
2020
# sectionName: https
2021
# -- List of hostnames for HTTPRoute
2022
hostnames: []
2023
# - policy-reporter-kyverno-plugin.example.com
2024
# -- HTTPRoute rules configuration
2025
# Allows advanced routing with matches and filters
2026
rules:
2027
- matches:
2028
- path:
2029
type: PathPrefix
2030
value: /
2031
# Optional filters:
2032
# filters:
2033
# - type: RequestHeaderModifier
2034
# requestHeaderModifier:
2035
# add:
2036
# - name: X-Custom-Header
2037
# value: value
2038
# Optional timeouts configuration:
2039
# timeouts:
2040
# request: 30s
2041
# backendRequest: 30s
2042
monitoring:
2043
# -- Enables the Prometheus Operator integration
2044
enabled: false
2045
# -- Key/value pairs that are attached to all resources.
2046
annotations: {}
2047
serviceMonitor:
2048
enabled: true
2049
# -- HonorLabels chooses the metrics labels on collisions with target labels
2050
honorLabels: false
2051
# -- Allow to override the namespace for serviceMonitor
2052
namespace:
2053
# -- Labels to match the serviceMonitorSelector of the Prometheus Resource
2054
labels: {}
2055
# -- ServiceMonitor Relabelings
2056
# https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#relabelconfig
2057
relabelings: []
2058
# -- See serviceMonitor.relabelings
2059
metricRelabelings: []
2060
# -- (optional) NamespaceSelector
2061
namespaceSelector: {}
2062
# -- (optional) ScrapeTimeout
2063
scrapeTimeout:
2064
# -- (optional) Scrape interval
2065
interval:
2066
# -- Is TLS required for endpoint
2067
secure: false
2068
# -- TLS Configuration for endpoint
2069
tlsConfig: {}
2070
grafana:
2071
# -- Naamespace for configMap of grafana dashboards
2072
namespace:
2073
dashboards:
2074
# -- Enable the deployment of grafana dashboards
2075
enabled: true
2076
# -- Label to find dashboards using the k8s sidecar
2077
label: grafana_dashboard
2078
# -- Label value to find dashboards using the k8s sidecar
2079
value: "1"
2080
# -- List of custom label filter
2081
# Used to add filter for report label based metric labels defined in custom mode
2082
labelFilter: []
2083
multicluster:
2084
# -- Enable cluster filter in all dashboards
2085
enabled: false
2086
# -- Metric Label which is used to filter clusters
2087
label: cluster
2088
enable:
2089
# -- Enable the Overview Dashboard
2090
overview: true
2091
# -- Enable the PolicyReport Dashboard
2092
policyReportDetails: true
2093
# -- Enable the ClusterPolicyReport Dashboard
2094
clusterPolicyReportDetails: true
2095
folder:
2096
# -- Annotation to enable folder storage using the k8s sidecar
2097
annotation: grafana_folder
2098
# -- Grafana folder in which to store the dashboards
2099
name: Policy Reporter
2100
datasource:
2101
# -- Grafana Datasource Label
2102
label: Prometheus
2103
# -- Grafana Datasource PluginId
2104
pluginId: prometheus
2105
# -- Grafana Datasource PluginName
2106
pluginName: Prometheus
2107
grafanaDashboard:
2108
# -- Create GrafanaDashboard custom resource referencing to the configMap.
2109
# according to https://grafana-operator.github.io/grafana-operator/docs/examples/dashboard_from_configmap/readme/
2110
enabled: false
2111
# -- Dashboard folder
2112
folder: kyverno
2113
# -- Allow cross Namespace import
2114
allowCrossNamespaceImport: true
2115
# -- Label match selector
2116
matchLabels:
2117
dashboards: "grafana"
2118
# Customize the Grafana PolicyReport Dashboard
2119
policyReportDetails:
2120
firstStatusRow:
2121
height: 8
2122
secondStatusRow:
2123
enabled: true
2124
height: 2
2125
statusTimeline:
2126
enabled: true
2127
height: 8
2128
passTable:
2129
enabled: true
2130
height: 8
2131
failTable:
2132
enabled: true
2133
height: 8
2134
warningTable:
2135
enabled: true
2136
height: 4
2137
errorTable:
2138
enabled: true
2139
height: 4
2140
# Customize the Grafana ClusterPolicyReport Dashboard
2141
clusterPolicyReportDetails:
2142
statusRow:
2143
height: 6
2144
statusTimeline:
2145
enabled: true
2146
height: 8
2147
passTable:
2148
enabled: true
2149
height: 8
2150
failTable:
2151
enabled: true
2152
height: 8
2153
warningTable:
2154
enabled: true
2155
height: 4
2156
errorTable:
2157
enabled: true
2158
height: 4
2159
# Customize the Grafana Overview Dashboard
2160
policyReportOverview:
2161
failingSummaryRow:
2162
height: 8
2163
failingTimeline:
2164
height: 10
2165
failingPolicyRuleTable:
2166
height: 10
2167
failingClusterPolicyRuleTable:
2168
height: 10
2169
# -- list of extra manifests
2170
extraManifests: []
2171
# -- Extra configuration options appended to core policy reporter
2172
extraConfig: {}
2173

The trusted source for open source

Talk to an expert
PrivacyTerms

Product

Chainguard ContainersChainguard LibrariesChainguard VMsChainguard OS PackagesChainguard ActionsChainguard Agent SkillsIntegrationsPricing
© 2026 Chainguard, Inc. All Rights Reserved.
Chainguard® and the Chainguard logo are registered trademarks of Chainguard, Inc. in the United States and/or other countries.
The other respective trademarks mentioned on this page are owned by the respective companies and use of them does not imply any affiliation or endorsement.