2022-12-19 16:26:07 +01:00
# -- Internal settings used with `helm template` to generate install manifest
# @ignored
templating :
enabled : false
debug : false
2023-01-20 17:28:34 +01:00
version : ~
2022-12-19 16:26:07 +01:00
2023-01-20 17:28:34 +01:00
# -- (string) Override the name of the chart
nameOverride : ~
2022-02-25 19:25:21 +01:00
2023-01-20 17:28:34 +01:00
# -- (string) Override the expanded name of the chart
fullnameOverride : ~
2022-02-25 19:25:21 +01:00
2023-01-20 17:28:34 +01:00
# -- (string) Override the namespace the chart deploys to
namespaceOverride : ~
2022-02-25 19:25:21 +01:00
2023-01-23 14:31:22 +01:00
# CRDs configuration
2023-01-20 22:01:33 +01:00
crds :
2023-01-23 14:31:22 +01:00
2023-01-20 22:01:33 +01:00
# -- Whether to have Helm install the Kyverno CRDs, if the CRDs are not installed by Helm, they must be added before policies can be created
install : true
# -- Additional CRDs annotations
annotations : {}
# argocd.argoproj.io/sync-options: Replace=true
# strategy.spinnaker.io/replace: 'true'
2023-01-23 14:31:22 +01:00
# Configuration
2023-01-20 15:36:54 +01:00
config :
# -- Create the configmap.
create : true
# -- (string) The configmap name (required if `create` is `false`).
name : ~
# -- Additional annotations to add to the configmap.
annotations : {}
# -- Enable registry mutation for container images. Enabled by default.
enableDefaultRegistryMutation : true
# -- The registry hostname used for the image mutation.
defaultRegistry : docker.io
# -- Exclude group role
excludeGroupRole : [ ]
# -- Exclude username
excludeUsername : [ ]
# -- Generate success events.
generateSuccessEvents : false
# -- Resource types to be skipped by the Kyverno policy engine.
# Make sure to surround each entry in quotes so that it doesn't get parsed as a nested YAML list.
# These are joined together without spaces, run through `tpl`, and the result is set in the config map.
# @default -- See [values.yaml](values.yaml)
resourceFilters :
- '[Event,*,*]'
- '[*,kube-system,*]'
- '[*,kube-public,*]'
- '[*,kube-node-lease,*]'
- '[Node,*,*]'
- '[APIService,*,*]'
- '[TokenReview,*,*]'
- '[SubjectAccessReview,*,*]'
- '[SelfSubjectAccessReview,*,*]'
- '[Binding,*,*]'
- '[ReplicaSet,*,*]'
- '[AdmissionReport,*,*]'
- '[ClusterAdmissionReport,*,*]'
- '[BackgroundScanReport,*,*]'
- '[ClusterBackgroundScanReport,*,*]'
# exclude resources from the chart
- '[ClusterRole,*,{{ template "kyverno.fullname" . }}:*]'
- '[ClusterRoleBinding,*,{{ template "kyverno.fullname" . }}:*]'
2023-01-26 17:41:39 +01:00
- '[ServiceAccount,{{ include "kyverno.namespace" . }},{{ template "kyverno.admission-controller.serviceAccountName" . }}]'
2023-01-20 15:36:54 +01:00
- '[ConfigMap,{{ include "kyverno.namespace" . }},{{ template "kyverno.config.configMapName" . }}]'
- '[ConfigMap,{{ include "kyverno.namespace" . }},{{ template "kyverno.config.metricsConfigMapName" . }}]'
- '[Deployment,{{ include "kyverno.namespace" . }},{{ template "kyverno.fullname" . }}]'
- '[Job,{{ include "kyverno.namespace" . }},{{ template "kyverno.fullname" . }}-hook-pre-delete]'
- '[NetworkPolicy,{{ include "kyverno.namespace" . }},{{ template "kyverno.fullname" . }}]'
- '[PodDisruptionBudget,{{ include "kyverno.namespace" . }},{{ template "kyverno.fullname" . }}]'
- '[Role,{{ include "kyverno.namespace" . }},{{ template "kyverno.fullname" . }}:*]'
- '[RoleBinding,{{ include "kyverno.namespace" . }},{{ template "kyverno.fullname" . }}:*]'
2023-01-27 14:52:26 +01:00
- '[Secret,{{ include "kyverno.namespace" . }},{{ template "kyverno.admission-controller.serviceName" . }}.{{ template "kyverno.namespace" . }}.svc.*]'
- '[Service,{{ include "kyverno.namespace" . }},{{ template "kyverno.admission-controller.serviceName" . }}]'
- '[Service,{{ include "kyverno.namespace" . }},{{ template "kyverno.admission-controller.serviceName" . }}-metrics]'
- '[ServiceMonitor,{{ if .Values.serviceMonitor.namespace }}{{ .Values.serviceMonitor.namespace }}{{ else }}{{ template "kyverno.namespace" . }}{{ end }},{{ template "kyverno.admission-controller.serviceName" . }}-service-monitor]'
2023-01-23 14:31:22 +01:00
- '[Pod,{{ include "kyverno.namespace" . }},{{ template "kyverno.fullname" . }}-*]'
2023-01-20 15:36:54 +01:00
# -- Defines the `namespaceSelector` in the webhook configurations.
# Note that it takes a list of `namespaceSelector` and/or `objectSelector` in the JSON format, and only the first element
# will be forwarded to the webhook configurations.
# The Kyverno namespace is excluded if `excludeKyvernoNamespace` is `true` (default)
2023-01-23 14:31:22 +01:00
webhooks : [ ]
2023-01-20 15:36:54 +01:00
# Exclude namespaces
# - namespaceSelector:
# matchExpressions:
# - key: kubernetes.io/metadata.name
# operator: NotIn
# values:
# - kube-system
# - kyverno
# Exclude objects
# - objectSelector:
# matchExpressions:
# - key: webhooks.kyverno.io/exclude
# operator: DoesNotExist
2023-01-23 14:31:22 +01:00
# Metrics configuration
2023-01-20 15:36:54 +01:00
metricsConfig :
# -- Create the configmap.
create : true
# -- (string) The configmap name (required if `create` is `false`).
name : ~
# -- Additional annotations to add to the configmap.
annotations : {}
namespaces :
# -- List of namespaces to capture metrics for.
include : [ ]
# -- list of namespaces to NOT capture metrics for.
exclude : [ ]
# -- (string) Rate at which metrics should reset so as to clean up the memory footprint of kyverno metrics, if you might be expecting high memory footprint of Kyverno's metrics. Default: 0, no refresh of metrics
metricsRefreshInterval : ~
2023-01-23 14:31:22 +01:00
# metricsRefreshInterval: 24h
2023-01-20 15:36:54 +01:00
2023-01-20 21:04:25 +01:00
# -- Image pull secrets for image verification policies, this will define the `--imagePullSecrets` argument
imagePullSecrets : {}
# regcred:
# registry: foo.example.com
# username: foobar
# password: secret
# regcred2:
# registry: bar.example.com
# username: barbaz
# password: secret2
# -- Existing Image pull secrets for image verification policies, this will define the `--imagePullSecrets` argument
existingImagePullSecrets : [ ]
# - test-registry
# - other-test-registry
2023-01-23 14:31:22 +01:00
# Tests configuration
test :
image :
2023-01-27 14:52:26 +01:00
# -- (string) Image registry
registry : ~
2023-01-23 14:31:22 +01:00
# -- Image repository
repository : busybox
# -- Image tag
# Defaults to `latest` if omitted
2023-01-27 14:52:26 +01:00
tag : '1.35'
# -- (string) Image pull policy
2023-01-23 14:31:22 +01:00
# Defaults to image.pullPolicy if omitted
2023-01-27 14:52:26 +01:00
pullPolicy : ~
2023-01-23 14:31:22 +01:00
resources :
# -- Pod resource limits
limits :
cpu : 100m
memory : 256Mi
# -- Pod resource requests
requests :
cpu : 10m
memory : 64Mi
# -- Security context for the test containers
securityContext :
runAsUser : 65534
runAsGroup : 65534
runAsNonRoot : true
privileged : false
allowPrivilegeEscalation : false
readOnlyRootFilesystem : true
capabilities :
drop :
- ALL
seccompProfile :
type : RuntimeDefault
2021-06-01 20:54:33 +02:00
# -- Additional labels
customLabels : {}
2020-05-08 19:04:40 -07:00
rbac :
2022-02-25 19:25:21 +01:00
# -- Create ClusterRoles, ClusterRoleBindings, and ServiceAccount
2020-05-08 19:04:40 -07:00
create : true
serviceAccount :
2022-02-25 19:25:21 +01:00
# -- Create a ServiceAccount
2020-05-08 19:04:40 -07:00
create : true
2022-02-25 19:25:21 +01:00
# -- The ServiceAccount name
2020-05-08 19:04:40 -07:00
name :
2022-02-25 19:25:21 +01:00
# -- Annotations for the ServiceAccount
2020-05-08 19:04:40 -07:00
annotations : {}
2022-02-25 19:25:21 +01:00
# example.com/annotation: value
2020-05-08 19:04:40 -07:00
image :
2023-01-30 17:58:46 +01:00
# -- Image registry
registry : ghcr.io
2022-02-25 19:25:21 +01:00
# -- Image repository
2023-01-30 17:58:46 +01:00
repository : kyverno/kyverno
# -- (string) Image tag
2020-05-08 19:04:40 -07:00
# Defaults to appVersion in Chart.yaml if omitted
2023-01-30 17:58:46 +01:00
tag : ~
2022-02-25 19:25:21 +01:00
# -- Image pull policy
2020-05-08 19:04:40 -07:00
pullPolicy : IfNotPresent
2022-02-25 19:25:21 +01:00
# -- Image pull secrets
2020-05-08 19:04:40 -07:00
pullSecrets : [ ]
# - secretName
2022-02-25 19:25:21 +01:00
2020-05-08 19:04:40 -07:00
initImage :
2023-01-30 17:58:46 +01:00
# -- Image registry
registry : ghcr.io
2022-02-25 19:25:21 +01:00
# -- Image repository
2023-01-30 17:58:46 +01:00
repository : kyverno/kyvernopre
# -- (string) Image tag
2020-05-08 19:04:40 -07:00
# If initImage.tag is missing, defaults to image.tag
2023-01-30 17:58:46 +01:00
tag : ~
# -- (string) Image pull policy
2020-05-08 19:04:40 -07:00
# If initImage.pullPolicy is missing, defaults to image.pullPolicy
2023-01-30 17:58:46 +01:00
pullPolicy : ~
2022-02-25 19:25:21 +01:00
2022-10-02 20:45:03 +01:00
initContainer :
# -- Extra arguments to give to the kyvernopre binary.
extraArgs :
- --loggingFormat=text
2022-02-25 19:25:21 +01:00
# -- Additional labels to add to each pod
2020-05-08 19:04:40 -07:00
podLabels : {}
2022-02-25 19:25:21 +01:00
# example.com/label: foo
2020-05-08 19:04:40 -07:00
2022-02-25 19:25:21 +01:00
# -- Additional annotations to add to each pod
2020-05-08 19:04:40 -07:00
podAnnotations : {}
2022-02-25 19:25:21 +01:00
# example.com/annotation: foo
2020-05-08 19:04:40 -07:00
2022-02-25 19:25:21 +01:00
# -- Security context for the pod
2020-05-08 19:04:40 -07:00
podSecurityContext : {}
2022-02-28 15:40:40 +01:00
# -- Security context for the containers
securityContext :
runAsNonRoot : true
privileged : false
allowPrivilegeEscalation : false
readOnlyRootFilesystem : true
capabilities :
drop :
- ALL
seccompProfile :
type : RuntimeDefault
2021-09-20 15:52:46 +05:30
antiAffinity :
2022-02-25 19:25:21 +01:00
# -- Pod antiAffinities toggle.
# Enabled by default but can be disabled if you want to schedule pods to the same node.
2021-09-20 15:52:46 +05:30
enable : true
2022-01-06 06:05:15 +01:00
2022-02-25 19:25:21 +01:00
# -- Pod anti affinity constraints.
# @default -- See [values.yaml](values.yaml)
2022-01-28 16:05:41 +01:00
podAntiAffinity :
preferredDuringSchedulingIgnoredDuringExecution :
2022-01-06 06:05:15 +01:00
- weight : 1
podAffinityTerm :
labelSelector :
matchExpressions :
2022-11-30 22:38:05 +01:00
- key : app.kubernetes.io/name
operator : In
values :
- '{{ template "kyverno.name" . }}'
2022-01-06 06:05:15 +01:00
topologyKey : kubernetes.io/hostname
2021-09-20 15:52:46 +05:30
2022-02-25 19:25:21 +01:00
# -- Pod affinity constraints.
2022-01-28 16:05:41 +01:00
podAffinity : {}
2022-02-25 19:25:21 +01:00
# -- Node affinity constraints.
2022-01-28 16:05:41 +01:00
nodeAffinity : {}
2022-02-25 19:25:21 +01:00
# -- Env variables for initContainers.
2021-06-22 15:39:17 +02:00
envVarsInit : {}
2022-02-25 19:25:21 +01:00
# -- Env variables for containers.
2021-03-16 17:11:04 -04:00
envVars : {}
2022-02-25 19:25:21 +01:00
# -- Extra arguments to give to the binary.
2022-03-28 16:01:27 +02:00
extraArgs :
2022-10-02 20:45:03 +01:00
- --loggingFormat=text
2020-05-08 19:04:40 -07:00
2022-08-01 15:29:27 +02:00
# -- Array of extra init containers
extraInitContainers : [ ]
# Example:
# - name: init-container
# image: busybox
# command: ['sh', '-c', 'echo Hello']
# -- Array of extra containers to run alongside kyverno
extraContainers : [ ]
# Example:
# - name: myapp-container
# image: busybox
# command: ['sh', '-c', 'echo Hello && sleep 3600']
2020-05-08 19:04:40 -07:00
resources :
2022-02-25 19:25:21 +01:00
# -- Pod resource limits
2020-05-21 12:18:05 -07:00
limits :
2021-12-21 15:11:28 +08:00
memory : 384Mi
2022-02-25 19:25:21 +01:00
# -- Pod resource requests
2020-05-21 12:18:05 -07:00
requests :
cpu : 100m
2021-12-21 15:11:28 +08:00
memory : 128Mi
2020-05-08 19:04:40 -07:00
2021-05-07 18:53:00 +02:00
initResources :
2022-02-25 19:25:21 +01:00
# -- Pod resource limits
2021-05-07 18:53:00 +02:00
limits :
cpu : 100m
memory : 256Mi
2022-02-25 19:25:21 +01:00
# -- Pod resource requests
2021-05-07 18:53:00 +02:00
requests :
cpu : 10m
memory : 64Mi
2022-10-16 18:50:28 +02:00
# -- Startup probe.
# The block is directly forwarded into the deployment, so you can use whatever startupProbes configuration you want.
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/
# @default -- See [values.yaml](values.yaml)
startupProbe :
httpGet :
path : /health/liveness
port : 9443
scheme : HTTPS
2022-11-10 14:49:22 +01:00
failureThreshold : 20
initialDelaySeconds : 2
periodSeconds : 6
2022-10-16 18:50:28 +02:00
2022-02-25 19:25:21 +01:00
# -- Liveness probe.
# The block is directly forwarded into the deployment, so you can use whatever livenessProbe configuration you want.
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/
# @default -- See [values.yaml](values.yaml)
2020-05-08 19:04:40 -07:00
livenessProbe :
2020-05-27 06:33:32 +05:30
httpGet :
path : /health/liveness
2020-10-22 13:07:48 -07:00
port : 9443
2020-05-27 06:33:32 +05:30
scheme : HTTPS
2021-09-11 03:09:12 +05:30
initialDelaySeconds : 15
2021-03-31 15:44:56 -04:00
periodSeconds : 30
2020-05-27 06:33:32 +05:30
timeoutSeconds : 5
failureThreshold : 2
successThreshold : 1
2020-05-08 19:04:40 -07:00
2022-02-25 19:25:21 +01:00
# -- Readiness Probe.
# The block is directly forwarded into the deployment, so you can use whatever readinessProbe configuration you want.
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/
# @default -- See [values.yaml](values.yaml)
2020-05-08 19:04:40 -07:00
readinessProbe :
2020-05-27 06:33:32 +05:30
httpGet :
path : /health/readiness
2020-10-22 13:07:48 -07:00
port : 9443
2020-05-27 06:33:32 +05:30
scheme : HTTPS
initialDelaySeconds : 5
periodSeconds : 10
timeoutSeconds : 5
failureThreshold : 6
successThreshold : 1
2020-05-08 19:04:40 -07:00
2022-08-25 06:48:31 +02:00
# -- Additional resources to be added to controller RBAC permissions.
generatecontrollerExtraResources : [ ]
2020-05-08 19:04:40 -07:00
# - ResourceA
# - ResourceB
2022-06-07 08:55:27 -04:00
# -- Exclude Kyverno namespace
# Determines if default Kyverno namespace exclusion is enabled for webhooks and resourceFilters
excludeKyvernoNamespace : true
2022-08-12 05:36:01 -04:00
# -- resourceFilter namespace exclude
# Namespaces to exclude from the default resourceFilters
resourceFiltersExcludeNamespaces : [ ]
2020-05-08 19:04:40 -07:00
service :
2022-02-25 19:25:21 +01:00
# -- Service port.
2020-05-08 19:04:40 -07:00
port : 443
2022-02-25 19:25:21 +01:00
# -- Service type.
2020-05-08 19:04:40 -07:00
type : ClusterIP
2022-02-25 19:25:21 +01:00
# -- Service node port.
# Only used if `service.type` is `NodePort`.
2020-05-08 19:04:40 -07:00
nodePort :
2022-02-25 19:25:21 +01:00
# -- Service annotations.
2021-06-10 16:53:29 -04:00
annotations : {}
metricsService :
2022-02-25 19:25:21 +01:00
# -- Create service.
2021-06-10 16:53:29 -04:00
create : true
2022-02-25 19:25:21 +01:00
# -- Service port.
# Kyverno's metrics server will be exposed at this port.
2021-06-10 16:53:29 -04:00
port : 8000
2022-02-25 19:25:21 +01:00
# -- Service type.
type : ClusterIP
# -- Service node port.
# Only used if `metricsService.type` is `NodePort`.
2021-06-10 16:53:29 -04:00
nodePort :
2022-02-25 19:25:21 +01:00
# -- Service annotations.
2020-05-08 19:04:40 -07:00
annotations : {}
2021-07-24 00:33:05 +05:00
serviceMonitor :
2022-02-25 19:25:21 +01:00
# -- Create a `ServiceMonitor` to collect Prometheus metrics.
2021-07-24 00:33:05 +05:00
enabled : false
2022-02-25 19:25:21 +01:00
# -- Additional labels
2021-07-24 00:33:05 +05:00
additionalLabels :
# key: value
2022-02-25 19:25:21 +01:00
# -- Override namespace (default is the same as kyverno)
2021-08-12 22:14:21 +02:00
namespace :
2022-02-25 19:25:21 +01:00
# -- Interval to scrape metrics
2021-07-24 00:33:05 +05:00
interval : 30s
2022-02-25 19:25:21 +01:00
# -- Timeout if metrics can't be retrieved in given time interval
2021-07-24 00:33:05 +05:00
scrapeTimeout : 25s
2022-02-25 19:25:21 +01:00
# -- Is TLS required for endpoint
2021-07-24 00:33:05 +05:00
secure : false
2022-02-25 19:25:21 +01:00
# -- TLS Configuration for endpoint
2021-07-24 00:33:05 +05:00
tlsConfig : {}
2022-02-25 19:25:21 +01:00
# -- Kyverno requires a certificate key pair and corresponding certificate authority
2020-05-08 19:04:40 -07:00
# to properly register its webhooks. This can be done in one of 3 ways:
# 1) Use kube-controller-manager to generate a CA-signed certificate (preferred)
# 2) Provide your own CA and cert.
# In this case, you will need to create a certificate with a specific name and data structure.
# As long as you follow the naming scheme, it will be automatically picked up.
2022-05-11 09:11:50 +02:00
# kyverno-svc.(namespace).svc.kyverno-tls-ca (with data entries named tls.key and tls.crt)
2020-09-29 16:15:27 -07:00
# kyverno-svc.kyverno.svc.kyverno-tls-pair (with data entries named tls.key and tls.crt)
2020-05-08 19:04:40 -07:00
# 3) Let Helm generate a self signed cert, by setting createSelfSignedCert true
# If letting Kyverno create its own CA or providing your own, make createSelfSignedCert is false
2020-10-22 17:53:17 -07:00
createSelfSignedCert : false
2021-08-03 21:19:58 -04:00
networkPolicy :
2022-02-25 19:25:21 +01:00
# -- When true, use a NetworkPolicy to allow ingress to the webhook
# This is useful on clusters using Calico and/or native k8s network policies in a default-deny setup.
2021-08-03 21:19:58 -04:00
enabled : false
2022-02-25 19:25:21 +01:00
# -- A list of valid from selectors according to https://kubernetes.io/docs/concepts/services-networking/network-policies.
2022-02-15 10:01:40 -05:00
ingressFrom : [ ]
2022-02-16 21:46:51 +05:30
webhooksCleanup :
2022-02-25 19:25:21 +01:00
# -- Create a helm pre-delete hook to cleanup webhooks.
2023-01-03 11:10:53 +01:00
enabled : false
2022-02-25 19:25:21 +01:00
# -- `kubectl` image to run commands for deleting webhooks.
image : bitnami/kubectl:latest
2022-05-11 19:55:14 -07:00
2022-11-04 17:38:05 +01:00
# -- A writable volume to use for the TUF root initialization.
2022-05-11 19:55:14 -07:00
tufRootMountPath : /.sigstore
2022-11-04 17:38:05 +01:00
2023-02-03 17:00:39 +01:00
# -- Volume to be mounted in pods for TUF/cosign work.
sigstoreVolume :
emptyDir : {}
2022-11-04 17:38:05 +01:00
grafana :
# -- Enable grafana dashboard creation.
enabled : false
2023-01-28 10:47:23 +01:00
# -- Configmap name template.
configMapName : '{{ include "kyverno.fullname" . }}-grafana'
# -- (string) Namespace to create the grafana dashboard configmap.
2022-11-04 17:38:05 +01:00
# If not set, it will be created in the same namespace where the chart is deployed.
2023-01-28 10:47:23 +01:00
namespace : ~
2022-11-04 17:38:05 +01:00
# -- Grafana dashboard configmap annotations.
annotations : {}
2022-11-14 18:30:12 +01:00
2023-03-02 13:01:06 +01:00
# Admission controller configuration
admissionController :
# -- (int) Desired number of pods
replicas : ~
2023-03-02 15:56:13 +01:00
# -- Deployment update strategy.
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
# @default -- See [values.yaml](values.yaml)
updateStrategy :
rollingUpdate :
maxSurge : 1
maxUnavailable : 40 %
type : RollingUpdate
# -- Optional priority class
priorityClassName : ''
# -- Change `hostNetwork` to `true` when you want the pod to share its host's network namespace.
# Useful for situations like when you end up dealing with a custom CNI over Amazon EKS.
# Update the `dnsPolicy` accordingly as well to suit the host network mode.
hostNetwork : false
# -- `dnsPolicy` determines the manner in which DNS resolution happens in the cluster.
# In case of `hostNetwork: true`, usually, the `dnsPolicy` is suitable to be `ClusterFirstWithHostNet`.
# For further reference: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy.
dnsPolicy : ClusterFirst
# -- Node labels for pod assignment
nodeSelector : {}
# -- List of node taints to tolerate
tolerations : [ ]
# -- Topology spread constraints.
topologySpreadConstraints : [ ]
podDisruptionBudget :
# -- Configures the minimum available pods for disruptions.
# Cannot be used if `maxUnavailable` is set.
minAvailable : 1
# -- Configures the maximum unavailable pods for disruptions.
# Cannot be used if `minAvailable` is set.
maxUnavailable :
2023-01-23 14:31:22 +01:00
# Cleanup controller configuration
2022-11-14 18:30:12 +01:00
cleanupController :
2022-12-09 18:12:37 +01:00
# -- Enable cleanup controller.
enabled : true
2022-12-05 18:37:44 +01:00
rbac :
# -- Create RBAC resources
create : true
serviceAccount :
# -- Service account name
name :
clusterRole :
# -- Extra resource permissions to add in the cluster role
extraResources : [ ]
2022-12-07 11:30:47 +01:00
# - apiGroups:
# - ''
# resources:
# - pods
2022-12-13 16:43:17 +01:00
# -- Create self-signed certificates at deployment time.
# The certificates won't be automatically renewed if this is set to `true`.
createSelfSignedCert : false
2022-11-14 18:30:12 +01:00
image :
2023-01-30 17:58:46 +01:00
# -- Image registry
registry : ghcr.io
2022-11-14 18:30:12 +01:00
# -- Image repository
2023-01-30 17:58:46 +01:00
repository : kyverno/cleanup-controller
# -- (string) Image tag
2022-11-14 18:30:12 +01:00
# Defaults to appVersion in Chart.yaml if omitted
2023-01-30 17:58:46 +01:00
tag : ~
2022-11-14 18:30:12 +01:00
# -- Image pull policy
pullPolicy : IfNotPresent
# -- Image pull secrets
pullSecrets : [ ]
# - secretName
2022-12-09 18:12:37 +01:00
# -- (int) Desired number of pods
replicas : ~
# -- Deployment update strategy.
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
# @default -- See [values.yaml](values.yaml)
updateStrategy :
rollingUpdate :
maxSurge : 1
maxUnavailable : 40 %
type : RollingUpdate
# -- Optional priority class
priorityClassName : ''
# -- Change `hostNetwork` to `true` when you want the pod to share its host's network namespace.
# Useful for situations like when you end up dealing with a custom CNI over Amazon EKS.
# Update the `dnsPolicy` accordingly as well to suit the host network mode.
hostNetwork : false
# -- `dnsPolicy` determines the manner in which DNS resolution happens in the cluster.
# In case of `hostNetwork: true`, usually, the `dnsPolicy` is suitable to be `ClusterFirstWithHostNet`.
# For further reference: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy.
dnsPolicy : ClusterFirst
2022-12-12 19:39:29 +01:00
# -- Extra arguments passed to the container on the command line
extraArgs : [ ]
2022-12-07 11:30:47 +01:00
2022-12-09 18:12:37 +01:00
resources :
# -- Pod resource limits
limits :
memory : 128Mi
# -- Pod resource requests
requests :
cpu : 100m
memory : 64Mi
2022-11-15 15:05:32 +01:00
# -- Startup probe.
# The block is directly forwarded into the deployment, so you can use whatever startupProbes configuration you want.
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/
# @default -- See [values.yaml](values.yaml)
2022-12-09 18:12:37 +01:00
startupProbe :
httpGet :
path : /health/liveness
port : 9443
scheme : HTTPS
failureThreshold : 20
initialDelaySeconds : 2
periodSeconds : 6
2022-11-15 15:05:32 +01:00
# -- Liveness probe.
# The block is directly forwarded into the deployment, so you can use whatever livenessProbe configuration you want.
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/
# @default -- See [values.yaml](values.yaml)
2022-12-09 18:12:37 +01:00
livenessProbe :
httpGet :
path : /health/liveness
port : 9443
scheme : HTTPS
initialDelaySeconds : 15
periodSeconds : 30
timeoutSeconds : 5
failureThreshold : 2
successThreshold : 1
2022-11-15 15:05:32 +01:00
# -- Readiness Probe.
# The block is directly forwarded into the deployment, so you can use whatever readinessProbe configuration you want.
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/
# @default -- See [values.yaml](values.yaml)
2022-12-09 18:12:37 +01:00
readinessProbe :
httpGet :
path : /health/readiness
port : 9443
scheme : HTTPS
initialDelaySeconds : 5
periodSeconds : 10
timeoutSeconds : 5
failureThreshold : 6
successThreshold : 1
2022-11-15 15:05:32 +01:00
# -- Node labels for pod assignment
nodeSelector : {}
# -- List of node taints to tolerate
tolerations : [ ]
2022-12-09 18:12:37 +01:00
antiAffinity :
# -- Pod antiAffinities toggle.
# Enabled by default but can be disabled if you want to schedule pods to the same node.
enabled : true
# -- Pod anti affinity constraints.
# @default -- See [values.yaml](values.yaml)
podAntiAffinity :
preferredDuringSchedulingIgnoredDuringExecution :
- weight : 1
podAffinityTerm :
labelSelector :
matchExpressions :
- key : app.kubernetes.io/component
operator : In
values :
- cleanup-controller
topologyKey : kubernetes.io/hostname
# -- Pod affinity constraints.
podAffinity : {}
# -- Node affinity constraints.
nodeAffinity : {}
2022-11-15 15:05:32 +01:00
# -- Topology spread constraints.
topologySpreadConstraints : [ ]
2022-12-09 18:12:37 +01:00
# -- Security context for the pod
podSecurityContext : {}
# -- Security context for the containers
securityContext :
runAsNonRoot : true
privileged : false
allowPrivilegeEscalation : false
readOnlyRootFilesystem : true
capabilities :
drop :
- ALL
seccompProfile :
type : RuntimeDefault
podDisruptionBudget :
# -- Configures the minimum available pods for disruptions.
# Cannot be used if `maxUnavailable` is set.
minAvailable : 1
# -- Configures the maximum unavailable pods for disruptions.
# Cannot be used if `minAvailable` is set.
maxUnavailable :
service :
# -- Service port.
port : 443
# -- Service type.
type : ClusterIP
# -- Service node port.
# Only used if `service.type` is `NodePort`.
nodePort :
# -- Service annotations.
annotations : {}
2022-12-12 19:39:29 +01:00
metricsService :
# -- Create service.
create : true
# -- Service port.
# Metrics server will be exposed at this port.
port : 8000
# -- Service type.
type : ClusterIP
# -- Service node port.
# Only used if `metricsService.type` is `NodePort`.
nodePort :
# -- Service annotations.
annotations : {}
serviceMonitor :
# -- Create a `ServiceMonitor` to collect Prometheus metrics.
2023-01-19 14:28:28 +01:00
enabled : false
# -- Additional labels
additionalLabels :
# key: value
# -- Override namespace (default is the same as kyverno)
namespace :
# -- Interval to scrape metrics
interval : 30s
# -- Timeout if metrics can't be retrieved in given time interval
scrapeTimeout : 25s
# -- Is TLS required for endpoint
secure : false
# -- TLS Configuration for endpoint
tlsConfig : {}
tracing :
# -- Enable tracing
enabled : false
# -- Traces receiver address
address :
# -- Traces receiver port
port :
# -- Traces receiver credentials
creds : ''
logging :
# -- Logging format
format : text
metering :
# -- Disable metrics export
disabled : false
# -- Otel configuration, can be `prometheus` or `grpc`
config : prometheus
# -- Prometheus endpoint port
port : 8000
# -- Otel collector endpoint
collector : ''
# -- Otel collector credentials
creds : ''
2023-01-23 14:31:22 +01:00
# Reports controller configuration
2023-01-19 14:28:28 +01:00
reportsController :
# -- Enable reports controller.
enabled : true
rbac :
# -- Create RBAC resources
create : true
serviceAccount :
# -- Service account name
name :
clusterRole :
# -- Extra resource permissions to add in the cluster role
extraResources : [ ]
# - apiGroups:
# - ''
# resources:
# - pods
image :
2023-01-30 17:58:46 +01:00
# -- Image registry
registry : ghcr.io
2023-01-19 14:28:28 +01:00
# -- Image repository
2023-01-30 17:58:46 +01:00
repository : kyverno/reports-controller
# -- (string) Image tag
2023-01-19 14:28:28 +01:00
# Defaults to appVersion in Chart.yaml if omitted
2023-01-30 17:58:46 +01:00
tag : ~
2023-01-19 14:28:28 +01:00
# -- Image pull policy
pullPolicy : IfNotPresent
# -- Image pull secrets
pullSecrets : [ ]
# - secretName
# -- (int) Desired number of pods
replicas : ~
# -- Deployment update strategy.
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
# @default -- See [values.yaml](values.yaml)
updateStrategy :
rollingUpdate :
maxSurge : 1
maxUnavailable : 40 %
type : RollingUpdate
# -- Optional priority class
priorityClassName : ''
# -- Change `hostNetwork` to `true` when you want the pod to share its host's network namespace.
# Useful for situations like when you end up dealing with a custom CNI over Amazon EKS.
# Update the `dnsPolicy` accordingly as well to suit the host network mode.
hostNetwork : false
# -- `dnsPolicy` determines the manner in which DNS resolution happens in the cluster.
# In case of `hostNetwork: true`, usually, the `dnsPolicy` is suitable to be `ClusterFirstWithHostNet`.
# For further reference: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy.
dnsPolicy : ClusterFirst
# -- Extra arguments passed to the container on the command line
extraArgs : [ ]
resources :
# -- Pod resource limits
limits :
memory : 128Mi
# -- Pod resource requests
requests :
cpu : 100m
memory : 64Mi
# TODO
# # -- Startup probe.
# # The block is directly forwarded into the deployment, so you can use whatever startupProbes configuration you want.
# # ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/
# # @default -- See [values.yaml](values.yaml)
# startupProbe:
# httpGet:
# path: /health/liveness
# port: 9443
# scheme: HTTPS
# failureThreshold: 20
# initialDelaySeconds: 2
# periodSeconds: 6
# # -- Liveness probe.
# # The block is directly forwarded into the deployment, so you can use whatever livenessProbe configuration you want.
# # ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/
# # @default -- See [values.yaml](values.yaml)
# livenessProbe:
# httpGet:
# path: /health/liveness
# port: 9443
# scheme: HTTPS
# initialDelaySeconds: 15
# periodSeconds: 30
# timeoutSeconds: 5
# failureThreshold: 2
# successThreshold: 1
# # -- Readiness Probe.
# # The block is directly forwarded into the deployment, so you can use whatever readinessProbe configuration you want.
# # ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/
# # @default -- See [values.yaml](values.yaml)
# readinessProbe:
# httpGet:
# path: /health/readiness
# port: 9443
# scheme: HTTPS
# initialDelaySeconds: 5
# periodSeconds: 10
# timeoutSeconds: 5
# failureThreshold: 6
# successThreshold: 1
# -- Node labels for pod assignment
nodeSelector : {}
# -- List of node taints to tolerate
tolerations : [ ]
antiAffinity :
# -- Pod antiAffinities toggle.
# Enabled by default but can be disabled if you want to schedule pods to the same node.
enabled : true
# -- Pod anti affinity constraints.
# @default -- See [values.yaml](values.yaml)
podAntiAffinity :
preferredDuringSchedulingIgnoredDuringExecution :
- weight : 1
podAffinityTerm :
labelSelector :
matchExpressions :
- key : app.kubernetes.io/component
operator : In
values :
- reports-controller
topologyKey : kubernetes.io/hostname
# -- Pod affinity constraints.
podAffinity : {}
# -- Node affinity constraints.
nodeAffinity : {}
# -- Topology spread constraints.
2023-02-01 00:12:34 +08:00
topologySpreadConstraints : [ ]
# -- Security context for the pod
podSecurityContext : {}
# -- Security context for the containers
securityContext :
runAsNonRoot : true
privileged : false
allowPrivilegeEscalation : false
readOnlyRootFilesystem : true
capabilities :
drop :
- ALL
seccompProfile :
type : RuntimeDefault
podDisruptionBudget :
# -- Configures the minimum available pods for disruptions.
# Cannot be used if `maxUnavailable` is set.
minAvailable : 1
# -- Configures the maximum unavailable pods for disruptions.
# Cannot be used if `minAvailable` is set.
maxUnavailable :
metricsService :
# -- Create service.
create : true
# -- Service port.
# Metrics server will be exposed at this port.
port : 8000
# -- Service type.
type : ClusterIP
# -- Service node port.
# Only used if `metricsService.type` is `NodePort`.
nodePort :
# -- Service annotations.
annotations : {}
serviceMonitor :
# -- Create a `ServiceMonitor` to collect Prometheus metrics.
enabled : false
# -- Additional labels
additionalLabels :
# key: value
# -- Override namespace (default is the same as kyverno)
namespace :
# -- Interval to scrape metrics
interval : 30s
# -- Timeout if metrics can't be retrieved in given time interval
scrapeTimeout : 25s
# -- Is TLS required for endpoint
secure : false
# -- TLS Configuration for endpoint
tlsConfig : {}
tracing :
# -- Enable tracing
enabled : false
# -- Traces receiver address
address :
# -- Traces receiver port
port :
# -- Traces receiver credentials
creds : ''
logging :
# -- Logging format
format : text
metering :
# -- Disable metrics export
disabled : false
# -- Otel configuration, can be `prometheus` or `grpc`
config : prometheus
# -- Prometheus endpoint port
port : 8000
# -- Otel collector endpoint
collector : ''
# -- Otel collector credentials
creds : ''
# Background controller configuration
backgroundController :
# -- Enable background controller.
enabled : true
rbac :
# -- Create RBAC resources
create : true
serviceAccount :
# -- Service account name
name :
clusterRole :
# -- Extra resource permissions to add in the cluster role
extraResources : [ ]
# - apiGroups:
# - ''
# resources:
# - pods
image :
# -- (string) Image registry
registry : ~
# If you want to manage the registry you should remove it from the repository
# registry: ghcr.io
# repository: kyverno/background-controller
# -- Image repository
repository : ghcr.io/kyverno/background-controller
# -- Image tag
# Defaults to appVersion in Chart.yaml if omitted
tag : # replaced in e2e tests
# -- Image pull policy
pullPolicy : IfNotPresent
# -- Image pull secrets
pullSecrets : [ ]
# - secretName
# -- (int) Desired number of pods
replicas : ~
# -- Deployment update strategy.
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
# @default -- See [values.yaml](values.yaml)
updateStrategy :
rollingUpdate :
maxSurge : 1
maxUnavailable : 40 %
type : RollingUpdate
# -- Optional priority class
priorityClassName : ''
# -- Change `hostNetwork` to `true` when you want the pod to share its host's network namespace.
# Useful for situations like when you end up dealing with a custom CNI over Amazon EKS.
# Update the `dnsPolicy` accordingly as well to suit the host network mode.
hostNetwork : false
# -- `dnsPolicy` determines the manner in which DNS resolution happens in the cluster.
# In case of `hostNetwork: true`, usually, the `dnsPolicy` is suitable to be `ClusterFirstWithHostNet`.
# For further reference: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy.
dnsPolicy : ClusterFirst
# -- Extra arguments passed to the container on the command line
extraArgs : [ ]
resources :
# -- Pod resource limits
limits :
memory : 128Mi
# -- Pod resource requests
requests :
cpu : 100m
memory : 64Mi
# -- Node labels for pod assignment
nodeSelector : {}
# -- List of node taints to tolerate
tolerations : [ ]
antiAffinity :
# -- Pod antiAffinities toggle.
# Enabled by default but can be disabled if you want to schedule pods to the same node.
enabled : true
# -- Pod anti affinity constraints.
# @default -- See [values.yaml](values.yaml)
podAntiAffinity :
preferredDuringSchedulingIgnoredDuringExecution :
- weight : 1
podAffinityTerm :
labelSelector :
matchExpressions :
- key : app.kubernetes.io/component
operator : In
values :
- reports-controller
topologyKey : kubernetes.io/hostname
# -- Pod affinity constraints.
podAffinity : {}
# -- Node affinity constraints.
nodeAffinity : {}
# -- Topology spread constraints.
2023-01-19 14:28:28 +01:00
topologySpreadConstraints : [ ]
# -- Security context for the pod
podSecurityContext : {}
# -- Security context for the containers
securityContext :
runAsNonRoot : true
privileged : false
allowPrivilegeEscalation : false
readOnlyRootFilesystem : true
capabilities :
drop :
- ALL
seccompProfile :
type : RuntimeDefault
podDisruptionBudget :
# -- Configures the minimum available pods for disruptions.
# Cannot be used if `maxUnavailable` is set.
minAvailable : 1
# -- Configures the maximum unavailable pods for disruptions.
# Cannot be used if `minAvailable` is set.
maxUnavailable :
metricsService :
# -- Create service.
create : true
# -- Service port.
# Metrics server will be exposed at this port.
port : 8000
# -- Service type.
type : ClusterIP
# -- Service node port.
# Only used if `metricsService.type` is `NodePort`.
nodePort :
# -- Service annotations.
annotations : {}
serviceMonitor :
# -- Create a `ServiceMonitor` to collect Prometheus metrics.
2022-12-12 19:39:29 +01:00
enabled : false
# -- Additional labels
additionalLabels :
# key: value
# -- Override namespace (default is the same as kyverno)
namespace :
# -- Interval to scrape metrics
interval : 30s
# -- Timeout if metrics can't be retrieved in given time interval
scrapeTimeout : 25s
# -- Is TLS required for endpoint
secure : false
# -- TLS Configuration for endpoint
tlsConfig : {}
tracing :
# -- Enable tracing
enabled : false
# -- Traces receiver address
address :
# -- Traces receiver port
port :
# -- Traces receiver credentials
creds : ''
logging :
# -- Logging format
format : text
metering :
# -- Disable metrics export
disabled : false
# -- Otel configuration, can be `prometheus` or `grpc`
config : prometheus
# -- Prometheus endpoint port
port : 8000
# -- Otel collector endpoint
collector : ''
# -- Otel collector credentials
creds : ''