DirectorySecurity AdvisoriesPricing
Sign in
Directory
contour logoHELM

contour

Helm chart
iamguarded
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
# This file has been modified by Chainguard, Inc.
2
#
3
# Copyright Chainguard, Inc. All Rights Reserved.
4
# Chainguard, Inc. modifications are subject to the license
5
# available at: https://www.chainguard.dev/legal/software-license-agreement
6
#
7
# Copyright Broadcom, Inc. All Rights Reserved.
8
# SPDX-License-Identifier: APACHE-2.0
9
10
## @section Global parameters
11
## Global Docker image parameters
12
## Please, note that this will override the image parameters, including dependencies, configured to use the global value
13
## Current available global Docker image parameters: imageRegistry, imagePullSecrets and storageClass
14
##
15
16
## @param global.imageRegistry Global Docker image registry
17
## @param global.useImageTags Pull every image by tag and ignore all image digests, including digests set in values. Use this when your registry mirror does not have the chart's default image digests.
18
## @param global.imagePullSecrets [array] Global Docker registry secret names as an array
19
## @param global.defaultStorageClass Global default StorageClass for Persistent Volume(s)
20
## @param global.storageClass DEPRECATED: use global.defaultStorageClass instead
21
##
22
global:
23
imageRegistry: ""
24
useImageTags: false
25
## E.g.
26
## imagePullSecrets:
27
## - myRegistryKeySecretName
28
##
29
imagePullSecrets: []
30
defaultStorageClass: ""
31
storageClass: ""
32
## Security parameters
33
##
34
security:
35
## @param global.security.allowInsecureImages Allows skipping image verification
36
allowInsecureImages: false
37
## Compatibility adaptations for Kubernetes platforms
38
##
39
compatibility:
40
## Compatibility adaptations for Openshift
41
##
42
openshift:
43
## @param global.compatibility.openshift.adaptSecurityContext Adapt the securityContext sections of the deployment to make them compatible with Openshift restricted-v2 SCC: remove runAsUser, runAsGroup and fsGroup and let the platform use their allowed default IDs. Possible values: auto (apply if the detected running cluster is Openshift), force (perform the adaptation always), disabled (do not perform adaptation)
44
##
45
adaptSecurityContext: auto
46
org: ""
47
## @section Common parameters
48
##
49
50
## @param nameOverride String to partially override contour.fullname include (will maintain the release name)
51
##
52
nameOverride: ""
53
## @param fullnameOverride String to fully override contour.fullname template
54
##
55
fullnameOverride: ""
56
## @param namespaceOverride String to fully override common.names.namespace
57
##
58
namespaceOverride: ""
59
## @param kubeVersion Force target Kubernetes version (using Helm capabilities if not set)
60
##
61
kubeVersion: ""
62
## @param extraDeploy [array] Array of extra objects to deploy with the release
63
##
64
extraDeploy: []
65
## @param commonLabels Labels to add to all deployed objects
66
##
67
commonLabels: {}
68
## @param commonAnnotations Annotations to add to all deployed objects
69
##
70
commonAnnotations: {}
71
## Diagnostic mode in the deployment
72
##
73
diagnosticMode:
74
## @param diagnosticMode.enabled Enable diagnostic mode (all probes will be disabled and the command will be overridden)
75
##
76
enabled: false
77
## @param diagnosticMode.command [array] Command to override all containers in the deployment
78
##
79
command:
80
- sleep
81
## @param diagnosticMode.args [array] Args to override all containers in the deployment
82
##
83
args:
84
- infinity
85
## @section Contour parameters
86
##
87
88
## To configure Contour, you must specify ONE of the following two options.
89
## @param existingConfigMap Specifies the name of an externally-defined ConfigMap to use as the configuration (this is mutually exclusive with `configInline`)
90
## Helm will not manage the contents of this ConfigMap, it is your responsibility to create it.
91
## e.g:
92
## existingConfigMap: contour
93
##
94
existingConfigMap: ""
95
## @param configInline [object] Specifies Contour's configuration directly in YAML format
96
## When configInline is used, Helm manages Contour's configuration ConfigMap as
97
## part of the release, and existingConfigMap is ignored.
98
## Refer to https://projectcontour.io/docs/latest/configuration for available options.
99
##
100
configInline:
101
disablePermitInsecure: false
102
tls:
103
fallback-certificate: {}
104
accesslog-format: envoy
105
contour:
106
## @param contour.enabled Contour Deployment creation.
107
##
108
enabled: true
109
## @param contour.image.registry [default: REGISTRY_NAME] Contour image registry
110
## @param contour.image.repository [default: REPOSITORY_NAME/contour] Contour image name
111
## @skip contour.image.tag Contour image tag
112
## @param contour.image.digest Contour image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
113
## @param contour.image.pullPolicy Contour Image pull policy
114
## @param contour.image.pullSecrets [array] Contour Image pull secrets
115
## @param contour.image.debug Enable image debug mode
116
##
117
image:
118
registry: cgr.dev
119
repository: chainguard-private/contour-iamguarded
120
tag: 1.33.8
121
digest: ""
122
## Specify a imagePullPolicy
123
## ref: https://kubernetes.io/docs/concepts/containers/images/#pre-pulled-images
124
##
125
pullPolicy: IfNotPresent
126
## Optionally specify an array of imagePullSecrets.
127
## Secrets must be manually created in the namespace.
128
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
129
## e.g:
130
## pullSecrets:
131
## - myRegistryKeySecretName
132
##
133
pullSecrets: []
134
debug: false
135
## @param contour.contourConfigName Contour Deployment with ContourConfiguration CRD.
136
#
137
contourConfigName: "contour"
138
## @param contour.configPath Contour Deployment with configmap.
139
##
140
configPath: true
141
## @param contour.replicaCount Number of Contour Pod replicas
142
#
143
replicaCount: 1
144
## @param contour.priorityClassName Priority class assigned to the pods
145
## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass
146
##
147
priorityClassName: ""
148
## @param contour.schedulerName Name of the k8s scheduler (other than default)
149
## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
150
##
151
schedulerName: ""
152
## @param contour.terminationGracePeriodSeconds In seconds, time the given to the Contour pod needs to terminate gracefully
153
## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod/#termination-of-pods
154
##
155
terminationGracePeriodSeconds: ""
156
## @param contour.topologySpreadConstraints Topology Spread Constraints for pod assignment
157
## https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
158
## The value is evaluated as a template
159
##
160
topologySpreadConstraints: []
161
## Configures the ports the Envoy proxy listens on
162
## @param contour.containerPorts.xds Set xds port inside Contour pod
163
## @param contour.containerPorts.metrics Set metrics port inside Contour pod
164
##
165
containerPorts:
166
xds: 8001
167
metrics: 8000
168
## @param contour.automountServiceAccountToken Mount Service Account token in pod
169
##
170
automountServiceAccountToken: true
171
## @param contour.hostAliases [array] Add deployment host aliases
172
## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
173
##
174
hostAliases: []
175
## @param contour.updateStrategy Strategy to use to update Pods
176
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#update-strategies
177
##
178
updateStrategy: {}
179
## @param contour.extraArgs [array] Extra arguments passed to Contour container
180
##
181
extraArgs: []
182
## Contour container resource requests and limits
183
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
184
## ref: https://projectcontour.io/guides/resource-limits/
185
## We usually recommend not to specify default resources and to leave this as a conscious
186
## choice for the user. This also increases chances charts run on environments with little
187
## resources, such as Minikube. If you do want to specify resources, uncomment the following
188
## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
189
## @param contour.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if contour.resources is set (contour.resources is recommended for production).
190
## More information: https://github.com/iamguarded/charts/blob/main/iamguarded/common/templates/_resources.tpl#L15
191
##
192
resourcesPreset: "nano"
193
## @param contour.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
194
## Example:
195
## resources:
196
## requests:
197
## cpu: 2
198
## memory: 512Mi
199
## limits:
200
## cpu: 3
201
## memory: 1024Mi
202
##
203
resources: {}
204
## @param contour.manageCRDs Manage the creation, upgrade and deletion of Contour CRDs.
205
##
206
manageCRDs: true
207
## @param contour.envoyServiceNamespace Namespace of the envoy service to inspect for Ingress status details.
208
##
209
envoyServiceNamespace: ""
210
## Name of the envoy service to inspect for Ingress status details.
211
## @param contour.envoyServiceName DEPRECATED: use envoy.service.name
212
##
213
envoyServiceName: ""
214
## @param contour.leaderElectionResourceName Name of the contour (Lease) leader election will lease.
215
##
216
leaderElectionResourceName: ""
217
## @param contour.ingressStatusAddress Address to set in Ingress object status. It is exclusive with `envoyServiceName` and `envoyServiceNamespace`.
218
##
219
ingressStatusAddress: ""
220
## @param contour.podAffinityPreset Contour Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
221
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
222
##
223
podAffinityPreset: ""
224
## @param contour.podAntiAffinityPreset Contour Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
225
## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
226
##
227
podAntiAffinityPreset: soft
228
## @param contour.podLabels [object] Extra labels for Contour pods
229
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
230
##
231
podLabels: {}
232
## @param contour.lifecycleHooks lifecycleHooks for the container to automate configuration before or after startup.
233
##
234
lifecycleHooks: {}
235
## @param contour.customLivenessProbe Override default liveness probe
236
##
237
customLivenessProbe: {}
238
## @param contour.customReadinessProbe Override default readiness probe
239
##
240
customReadinessProbe: {}
241
## @param contour.customStartupProbe Override default startup probe
242
##
243
customStartupProbe: {}
244
## Node affinity preset
245
## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity
246
## @param contour.nodeAffinityPreset.type Contour Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
247
## @param contour.nodeAffinityPreset.key Contour Node label key to match Ignored if `affinity` is set.
248
## @param contour.nodeAffinityPreset.values [array] Contour Node label values to match. Ignored if `affinity` is set.
249
##
250
nodeAffinityPreset:
251
type: ""
252
## E.g.
253
## key: "kubernetes.io/e2e-az-name"
254
##
255
key: ""
256
## E.g.
257
## values:
258
## - e2e-az1
259
## - e2e-az2
260
##
261
values: []
262
## @param contour.command Override default command
263
##
264
command: []
265
## @param contour.args Override default args
266
##
267
args: []
268
## @param contour.affinity [object] Affinity for Contour pod assignment
269
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
270
## Note: podAffinityPreset, podAntiAffinityPreset, and nodeAffinityPreset will be ignored when it's set
271
##
272
affinity: {}
273
## @param contour.nodeSelector [object] Node labels for Contour pod assignment
274
## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/
275
##
276
nodeSelector: {}
277
## @param contour.tolerations [array] Tolerations for Contour pod assignment
278
## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
279
##
280
tolerations: []
281
## @param contour.podAnnotations [object] Contour Pod annotations
282
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
283
##
284
podAnnotations: {}
285
## @param contour.serviceAccount.create Create a serviceAccount for the Contour pod
286
## @param contour.serviceAccount.name Use the serviceAccount with the specified name, a name is generated using the fullname template
287
## @param contour.serviceAccount.automountServiceAccountToken Automount service account token for the server service account
288
## @param contour.serviceAccount.annotations Annotations for service account. Evaluated as a template. Only used if `create` is `true`.
289
##
290
serviceAccount:
291
create: true
292
name: ""
293
automountServiceAccountToken: false
294
annotations: {}
295
## Contour Security Context
296
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
297
## @param contour.podSecurityContext.enabled Default backend Pod securityContext
298
## @param contour.podSecurityContext.fsGroupChangePolicy Set filesystem group change policy
299
## @param contour.podSecurityContext.sysctls Set kernel settings using the sysctl interface
300
## @param contour.podSecurityContext.supplementalGroups Set filesystem extra groups
301
## @param contour.podSecurityContext.fsGroup Set Default backend Pod's Security Context fsGroup
302
##
303
podSecurityContext:
304
enabled: true
305
fsGroupChangePolicy: Always
306
sysctls: []
307
supplementalGroups: []
308
fsGroup: 1001
309
## Envoy container security context
310
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
311
## @param contour.containerSecurityContext.enabled Enabled contour containers' Security Context
312
## @param contour.containerSecurityContext.seLinuxOptions [object,nullable] Set SELinux options in container
313
## @param contour.containerSecurityContext.runAsUser Set contour containers' Security Context runAsUser
314
## @param contour.containerSecurityContext.runAsGroup Set contour containers' Security Context runAsGroup
315
## @param contour.containerSecurityContext.runAsNonRoot Set contour containers' Security Context runAsNonRoot
316
## @param contour.containerSecurityContext.readOnlyRootFilesystem Set read only root file system pod's Security Conte
317
## @param contour.containerSecurityContext.privileged Set contour container's Security Context privileged
318
## @param contour.containerSecurityContext.allowPrivilegeEscalation Set contour container's Security Context allowPrivilegeEscalation
319
## @param contour.containerSecurityContext.capabilities.drop List of capabilities to be dropped
320
## @param contour.containerSecurityContext.seccompProfile.type Set container's Security Context seccomp profile
321
##
322
containerSecurityContext:
323
enabled: true
324
seLinuxOptions: {}
325
runAsUser: 1001
326
runAsGroup: 1001
327
runAsNonRoot: true
328
privileged: false
329
allowPrivilegeEscalation: false
330
capabilities:
331
drop: ["ALL"]
332
seccompProfile:
333
type: "RuntimeDefault"
334
readOnlyRootFilesystem: true
335
## @param contour.livenessProbe.enabled Enable/disable the Liveness probe
336
## @param contour.livenessProbe.initialDelaySeconds Delay before liveness probe is initiated
337
## @param contour.livenessProbe.periodSeconds How often to perform the probe
338
## @param contour.livenessProbe.timeoutSeconds When the probe times out
339
## @param contour.livenessProbe.failureThreshold Minimum consecutive failures for the probe to be considered failed after having succeeded.
340
## @param contour.livenessProbe.successThreshold Minimum consecutive successes for the probe to be considered successful after having failed.
341
##
342
livenessProbe:
343
enabled: true
344
initialDelaySeconds: 120
345
periodSeconds: 20
346
timeoutSeconds: 5
347
failureThreshold: 6
348
successThreshold: 1
349
## @param contour.readinessProbe.enabled Enable/disable the readiness probe
350
## @param contour.readinessProbe.initialDelaySeconds Delay before readiness probe is initiated
351
## @param contour.readinessProbe.periodSeconds How often to perform the probe
352
## @param contour.readinessProbe.timeoutSeconds When the probe times out
353
## @param contour.readinessProbe.failureThreshold Minimum consecutive failures for the probe to be considered failed after having succeeded.
354
## @param contour.readinessProbe.successThreshold Minimum consecutive successes for the probe to be considered successful after having failed.
355
##
356
readinessProbe:
357
enabled: true
358
initialDelaySeconds: 15
359
periodSeconds: 10
360
timeoutSeconds: 5
361
failureThreshold: 3
362
successThreshold: 1
363
## @param contour.startupProbe.enabled Enable/disable the startup probe
364
## @param contour.startupProbe.initialDelaySeconds Delay before startup probe is initiated
365
## @param contour.startupProbe.periodSeconds How often to perform the probe
366
## @param contour.startupProbe.timeoutSeconds When the probe times out
367
## @param contour.startupProbe.failureThreshold Minimum consecutive failures for the probe to be considered failed after having succeeded.
368
## @param contour.startupProbe.successThreshold Minimum consecutive successes for the probe to be considered successful after having failed.
369
##
370
startupProbe:
371
enabled: false
372
initialDelaySeconds: 15
373
periodSeconds: 10
374
timeoutSeconds: 5
375
failureThreshold: 3
376
successThreshold: 1
377
## Contour certgen configs
378
##
379
certgen:
380
## @param contour.certgen.serviceAccount.create Create a serviceAccount for the Contour pod
381
## @param contour.certgen.serviceAccount.name Use the serviceAccount with the specified name, a name is generated using the fullname template
382
## @param contour.certgen.serviceAccount.automountServiceAccountToken Automount service account token for the server service account
383
## @param contour.certgen.serviceAccount.annotations Annotations for service account. Evaluated as a template. Only used if `create` is `true`.
384
##
385
serviceAccount:
386
create: true
387
name: ""
388
automountServiceAccountToken: false
389
annotations: {}
390
## @param contour.certgen.certificateLifetime Generated certificate lifetime (in days).
391
##
392
certificateLifetime: 365
393
## @param contour.certgen.automountServiceAccountToken Mount Service Account token in pod
394
##
395
automountServiceAccountToken: true
396
## Network Policies
397
## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/
398
##
399
networkPolicy:
400
## @param contour.certgen.networkPolicy.enabled Specifies whether a NetworkPolicy should be created
401
##
402
enabled: true
403
## @param contour.certgen.networkPolicy.allowExternal Don't require server label for connections
404
## The Policy model to apply. When set to false, only pods with the correct
405
## server label will have network access to the ports server is listening
406
## on. When true, server will accept connections from any source
407
## (with the correct destination port).
408
##
409
allowExternal: true
410
## @param contour.certgen.networkPolicy.allowExternalEgress Allow the pod to access any range of port and all destinations.
411
##
412
allowExternalEgress: true
413
## @param contour.certgen.networkPolicy.kubeAPIServerPorts [array] List of possible endpoints to kube-apiserver (limit to your cluster settings to increase security)
414
##
415
kubeAPIServerPorts: [443, 6443, 8443]
416
## @param contour.certgen.networkPolicy.extraIngress [array] Add extra ingress rules to the NetworkPolicy
417
## e.g:
418
## extraIngress:
419
## - ports:
420
## - port: 1234
421
## from:
422
## - podSelector:
423
## - matchLabels:
424
## - role: frontend
425
## - podSelector:
426
## - matchExpressions:
427
## - key: role
428
## operator: In
429
## values:
430
## - frontend
431
extraIngress: []
432
## @param contour.certgen.networkPolicy.extraEgress [array] Add extra ingress rules to the NetworkPolicy
433
## e.g:
434
## extraEgress:
435
## - ports:
436
## - port: 1234
437
## to:
438
## - podSelector:
439
## - matchLabels:
440
## - role: frontend
441
## - podSelector:
442
## - matchExpressions:
443
## - key: role
444
## operator: In
445
## values:
446
## - frontend
447
##
448
extraEgress: []
449
## @param contour.certgen.networkPolicy.ingressNSMatchLabels [object] Labels to match to allow traffic from other namespaces
450
## @param contour.certgen.networkPolicy.ingressNSPodMatchLabels [object] Pod labels to match to allow traffic from other namespaces
451
##
452
ingressNSMatchLabels: {}
453
ingressNSPodMatchLabels: {}
454
## @param contour.tlsExistingSecret Name of the existingSecret to be use in Contour deployment. If it is not nil `contour.certgen` will be disabled.
455
## It will override `tlsExistingSecret`
456
##
457
tlsExistingSecret: ""
458
## Contour Service properties
459
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#multi-port-services
460
##
461
service:
462
## @param contour.service.type Service type
463
##
464
type: ClusterIP
465
## @param contour.service.ports.xds Contour service xds port
466
## @param contour.service.ports.metrics Contour service xds port
467
##
468
ports:
469
xds: 8001
470
metrics: 8000
471
## Node ports to expose
472
## @param contour.service.nodePorts.xds Node port for HTTP
473
## NOTE: choose port between <30000-32767>
474
##
475
nodePorts:
476
xds: ""
477
## @param contour.service.clusterIP Contour service Cluster IP
478
## e.g.:
479
## clusterIP: None
480
##
481
clusterIP: ""
482
## @param contour.service.loadBalancerIP Contour service Load Balancer IP
483
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-loadbalancer
484
##
485
loadBalancerIP: ""
486
## @param contour.service.loadBalancerSourceRanges Contour service Load Balancer sources
487
## ref: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service
488
## e.g:
489
## loadBalancerSourceRanges:
490
## - 10.10.10.0/24
491
##
492
loadBalancerSourceRanges: []
493
## @param contour.service.loadBalancerClass Contour service Load Balancer Class
494
## ref https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class
495
##
496
loadBalancerClass: ""
497
## @param contour.service.externalTrafficPolicy Contour service external traffic policy
498
## ref https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
499
##
500
externalTrafficPolicy: Cluster
501
## @param contour.service.annotations Additional custom annotations for Contour service
502
##
503
annotations: {}
504
## @param contour.service.extraPorts Extra port to expose on Contour service
505
##
506
extraPorts: []
507
## @param contour.service.sessionAffinity Session Affinity for Kubernetes service, can be "None" or "ClientIP"
508
## If "ClientIP", consecutive client requests will be directed to the same Pod
509
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies
510
##
511
sessionAffinity: None
512
## @param contour.service.sessionAffinityConfig Additional settings for the sessionAffinity
513
## sessionAffinityConfig:
514
## clientIP:
515
## timeoutSeconds: 300
516
##
517
sessionAffinityConfig: {}
518
## Network Policies
519
## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/
520
##
521
networkPolicy:
522
## @param contour.networkPolicy.enabled Specifies whether a NetworkPolicy should be created
523
##
524
enabled: true
525
## @param contour.networkPolicy.allowExternal Don't require server label for connections
526
## The Policy model to apply. When set to false, only pods with the correct
527
## server label will have network access to the ports server is listening
528
## on. When true, server will accept connections from any source
529
## (with the correct destination port).
530
##
531
allowExternal: true
532
## @param contour.networkPolicy.allowExternalEgress Allow the pod to access any range of port and all destinations.
533
##
534
allowExternalEgress: true
535
## @param contour.networkPolicy.kubeAPIServerPorts [array] List of possible endpoints to kube-apiserver (limit to your cluster settings to increase security)
536
##
537
kubeAPIServerPorts: [443, 6443, 8443]
538
## @param contour.networkPolicy.extraIngress [array] Add extra ingress rules to the NetworkPolicy
539
## e.g:
540
## extraIngress:
541
## - ports:
542
## - port: 1234
543
## from:
544
## - podSelector:
545
## - matchLabels:
546
## - role: frontend
547
## - podSelector:
548
## - matchExpressions:
549
## - key: role
550
## operator: In
551
## values:
552
## - frontend
553
extraIngress: []
554
## @param contour.networkPolicy.extraEgress [array] Add extra ingress rules to the NetworkPolicy
555
## e.g:
556
## extraEgress:
557
## - ports:
558
## - port: 1234
559
## to:
560
## - podSelector:
561
## - matchLabels:
562
## - role: frontend
563
## - podSelector:
564
## - matchExpressions:
565
## - key: role
566
## operator: In
567
## values:
568
## - frontend
569
##
570
extraEgress: []
571
## @param contour.networkPolicy.ingressNSMatchLabels [object] Labels to match to allow traffic from other namespaces
572
## @param contour.networkPolicy.ingressNSPodMatchLabels [object] Pod labels to match to allow traffic from other namespaces
573
##
574
ingressNSMatchLabels: {}
575
ingressNSPodMatchLabels: {}
576
## @param contour.initContainers [array] Attach additional init containers to Contour pods
577
## For example:
578
## initContainers:
579
## - name: your-image-name
580
## image: your-image
581
## imagePullPolicy: Always
582
##
583
initContainers: []
584
## @param contour.sidecars [array] Add additional sidecar containers to the Contour pods
585
## Example:
586
## sidecars:
587
## - name: your-image-name
588
## image: your-image
589
## imagePullPolicy: Always
590
## ports:
591
## - name: portname
592
## containerPort: 1234
593
##
594
sidecars: []
595
## @param contour.extraVolumes [array] Array to add extra volumes
596
##
597
extraVolumes: []
598
## @param contour.extraVolumeMounts [array] Array to add extra mounts (normally used with extraVolumes)
599
##
600
extraVolumeMounts: []
601
## @param contour.extraEnvVars [array] Array containing extra env vars to be added to all Contour containers
602
## For example:
603
## extraEnvVars:
604
## - name: MY_ENV_VAR
605
## value: env_var_value
606
##
607
extraEnvVars: []
608
## @param contour.extraEnvVarsCM ConfigMap containing extra env vars to be added to all Contour containers
609
##
610
extraEnvVarsCM: ""
611
## @param contour.extraEnvVarsSecret Secret containing extra env vars to be added to all Contour containers
612
##
613
extraEnvVarsSecret: ""
614
## @param contour.ingressClass.name Name of the ingress class to route through this controller.
615
## @param contour.ingressClass.create Whether to create or not the IngressClass resource
616
## @param contour.ingressClass.default Mark IngressClass resource as default for cluster
617
##
618
## DEPRECATED: Use a map instead
619
## You can use the the 'contour.ingressClass' as a string to indicate the ingress
620
## class name. This will skip the creation of an IngressClass resource.
621
## e.g:
622
## ingressClass: contour
623
##
624
ingressClass:
625
name: ""
626
create: true
627
default: true
628
## @param contour.debug Enable Contour debug log level
629
##
630
debug: false
631
## @param contour.logFormat Set contour log-format. Default text, either text or json.
632
##
633
logFormat: text
634
## @param contour.kubernetesDebug Contour kubernetes debug log level, Default 0, minimum 0, maximum 9.
635
##
636
kubernetesDebug: 0
637
## @param contour.rootNamespaces Restrict Contour to searching these namespaces for root ingress routes.
638
##
639
rootNamespaces: ""
640
## Exposes configuration of Envoy's Overload Manager through Contour's bootstrapping process
641
## When 95% of max heap size is reached for an Envoy, "shrink heap" operation is triggered.
642
## When 98% of max heap size is reached for an Envoy, it no longer accepts requests.
643
## https://projectcontour.io/docs/main/config/overload-manager/
644
## @param contour.overloadManager.enabled Enable Overload Manager
645
## @param contour.overloadManager.maxHeapBytes Overload Manager's maximum heap size in bytes
646
##
647
overloadManager:
648
enabled: false
649
maxHeapBytes: "2147483648"
650
## PodDisruptionBudget for default backend
651
## Contour Pod Disruption Budget configuration
652
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
653
## @param contour.pdb.create Enable Pod Disruption Budget configuration
654
## @param contour.pdb.minAvailable Minimum number/percentage of Default backend pods that should remain scheduled
655
## @param contour.pdb.maxUnavailable Maximum number/percentage of Default backend pods that should remain scheduled
656
##
657
pdb:
658
create: true
659
minAvailable: ""
660
maxUnavailable: ""
661
## @section Envoy parameters
662
##
663
envoy:
664
## @param envoy.enabled Envoy Proxy creation
665
##
666
enabled: true
667
## Iamguarded Envoy image
668
## ref: https://hub.docker.com/r/iamguarded/envoy/tags/
669
## @param envoy.image.registry [default: REGISTRY_NAME] Envoy Proxy image registry
670
## @param envoy.image.repository [default: REPOSITORY_NAME/envoy] Envoy Proxy image repository
671
## @skip envoy.image.tag Envoy Proxy image tag (immutable tags are recommended)
672
## @param envoy.image.digest Envoy Proxy image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
673
## @param envoy.image.pullPolicy Envoy image pull policy
674
## @param envoy.image.pullSecrets [array] Envoy image pull secrets
675
##
676
image:
677
registry: cgr.dev
678
repository: chainguard-private/envoy-iamguarded
679
tag: 1.40.2
680
digest: ""
681
## Specify a imagePullPolicy
682
## ref: https://kubernetes.io/docs/concepts/containers/images/#pre-pulled-images
683
##
684
pullPolicy: IfNotPresent
685
## Optionally specify an array of imagePullSecrets.
686
## Secrets must be manually created in the namespace.
687
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
688
## e.g:
689
## pullSecrets:
690
## - myRegistryKeySecretName
691
##
692
pullSecrets: []
693
## @param envoy.priorityClassName Priority class assigned to the pods
694
## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass
695
##
696
priorityClassName: ""
697
## @param envoy.schedulerName Name of the k8s scheduler (other than default)
698
## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
699
##
700
schedulerName: ""
701
## @param envoy.topologySpreadConstraints Topology Spread Constraints for pod assignment
702
## https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
703
## The value is evaluated as a template
704
##
705
topologySpreadConstraints: []
706
## @param envoy.extraArgs [array] Extra arguments passed to Envoy container
707
##
708
extraArgs: []
709
## @param envoy.automountServiceAccountToken Mount Service Account token in pod
710
##
711
automountServiceAccountToken: false
712
## @param envoy.hostAliases [array] Add deployment host aliases
713
## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
714
##
715
hostAliases: []
716
## Envoy container resource requests and limits
717
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
718
## ref: https://projectcontour.io/guides/resource-limits/
719
## We usually recommend not to specify default resources and to leave this as a conscious
720
## choice for the user. This also increases chances charts run on environments with little
721
## resources, such as Minikube. If you do want to specify resources, uncomment the following
722
## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
723
## @param envoy.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if envoy.resources is set (envoy.resources is recommended for production).
724
## More information: https://github.com/iamguarded/charts/blob/main/iamguarded/common/templates/_resources.tpl#L15
725
##
726
resourcesPreset: "nano"
727
## @param envoy.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
728
## Example:
729
## resources:
730
## requests:
731
## cpu: 2
732
## memory: 512Mi
733
## limits:
734
## cpu: 3
735
## memory: 1024Mi
736
##
737
resources: {}
738
## @param envoy.command Override default command
739
##
740
command: []
741
## @param envoy.args Override default args
742
##
743
args: []
744
## @param envoy.shutdownManager.enabled Contour shutdownManager sidecar
745
## @param envoy.shutdownManager.extraArgs [array] Extra arguments passed to shutdown container
746
## @param envoy.shutdownManager.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if envoy.shutdownManager.resources is set (envoy.shutdownManager.resources is recommended for production).
747
## More information: https://github.com/iamguarded/charts/blob/main/iamguarded/common/templates/_resources.tpl#L15
748
## @param envoy.shutdownManager.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
749
## @param envoy.shutdownManager.containerPorts.http Specify Port for shutdown container
750
## @param envoy.shutdownManager.lifecycleHooks lifecycleHooks for the container to automate configuration before or after startup.
751
##
752
shutdownManager:
753
lifecycleHooks: {}
754
extraArgs: []
755
enabled: true
756
resourcesPreset: "nano"
757
containerPorts:
758
http: 8090
759
## Example:
760
## resources:
761
## requests:
762
## cpu: 2
763
## memory: 512Mi
764
## limits:
765
## cpu: 3
766
## memory: 1024Mi
767
resources: {}
768
## Shutdown Manager container security context
769
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
770
## @param envoy.shutdownManager.containerSecurityContext.enabled Enabled envoy shutdownManager containers' Security Context
771
## @param envoy.shutdownManager.containerSecurityContext.seLinuxOptions [object,nullable] Set SELinux options in container
772
## @param envoy.shutdownManager.containerSecurityContext.runAsUser Set envoy shutdownManager containers' Security Context runAsUser
773
## @param envoy.shutdownManager.containerSecurityContext.runAsGroup Set contour containers' Security Context runAsGroup
774
## @param envoy.shutdownManager.containerSecurityContext.runAsNonRoot Set envoy shutdownManager containers' Security Context runAsNonRoot
775
## @param envoy.shutdownManager.containerSecurityContext.readOnlyRootFilesystem Set read only root file system pod's Security Conte
776
## @param envoy.shutdownManager.containerSecurityContext.privileged Set envoy.shutdownManager container's Security Context privileged
777
## @param envoy.shutdownManager.containerSecurityContext.allowPrivilegeEscalation Set envoy shutdownManager container's Security Context allowPrivilegeEscalation
778
## @param envoy.shutdownManager.containerSecurityContext.capabilities.drop List of capabilities to be dropped
779
## @param envoy.shutdownManager.containerSecurityContext.seccompProfile.type Set container's Security Context seccomp profile
780
##
781
containerSecurityContext:
782
enabled: true
783
seLinuxOptions: {}
784
runAsUser: 1001
785
runAsGroup: 1001
786
runAsNonRoot: true
787
privileged: false
788
allowPrivilegeEscalation: false
789
capabilities:
790
drop: ["ALL"]
791
seccompProfile:
792
type: "RuntimeDefault"
793
readOnlyRootFilesystem: true
794
## @param envoy.shutdownManager.livenessProbe.enabled Enable livenessProbe
795
## @param envoy.shutdownManager.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe
796
## @param envoy.shutdownManager.livenessProbe.periodSeconds Period seconds for livenessProbe
797
## @param envoy.shutdownManager.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe
798
## @param envoy.shutdownManager.livenessProbe.failureThreshold Failure threshold for livenessProbe
799
## @param envoy.shutdownManager.livenessProbe.successThreshold Success threshold for livenessProbe
800
##
801
livenessProbe:
802
enabled: true
803
initialDelaySeconds: 120
804
periodSeconds: 20
805
timeoutSeconds: 5
806
failureThreshold: 6
807
successThreshold: 1
808
## @param envoy.shutdownManager.readinessProbe.enabled Enable/disable the readiness probe
809
## @param envoy.shutdownManager.readinessProbe.initialDelaySeconds Delay before readiness probe is initiated
810
## @param envoy.shutdownManager.readinessProbe.periodSeconds How often to perform the probe
811
## @param envoy.shutdownManager.readinessProbe.timeoutSeconds When the probe times out
812
## @param envoy.shutdownManager.readinessProbe.failureThreshold Minimum consecutive failures for the probe to be considered failed after having succeeded.
813
## @param envoy.shutdownManager.readinessProbe.successThreshold Minimum consecutive successes for the probe to be considered successful after having failed.
814
##
815
readinessProbe:
816
enabled: true
817
initialDelaySeconds: 10
818
periodSeconds: 3
819
timeoutSeconds: 1
820
failureThreshold: 3
821
successThreshold: 1
822
## @param envoy.shutdownManager.startupProbe.enabled Enable/disable the startup probe
823
## @param envoy.shutdownManager.startupProbe.initialDelaySeconds Delay before startup probe is initiated
824
## @param envoy.shutdownManager.startupProbe.periodSeconds How often to perform the probe
825
## @param envoy.shutdownManager.startupProbe.timeoutSeconds When the probe times out
826
## @param envoy.shutdownManager.startupProbe.failureThreshold Minimum consecutive failures for the probe to be considered failed after having succeeded.
827
## @param envoy.shutdownManager.startupProbe.successThreshold Minimum consecutive successes for the probe to be considered successful after having failed.
828
##
829
startupProbe:
830
enabled: false
831
initialDelaySeconds: 15
832
periodSeconds: 10
833
timeoutSeconds: 5
834
failureThreshold: 3
835
successThreshold: 1
836
## @param envoy.shutdownManager.customLivenessProbe Override default liveness probe
837
##
838
customLivenessProbe: {}
839
## @param envoy.shutdownManager.customReadinessProbe Override default readiness probe
840
##
841
customReadinessProbe: {}
842
## @param envoy.shutdownManager.customStartupProbe Override default startup probe
843
##
844
customStartupProbe: {}
845
## @param envoy.kind Install as deployment or daemonset
846
##
847
kind: daemonset
848
## @param envoy.replicaCount Desired number of Controller pods
849
##
850
replicaCount: 1
851
## @param envoy.lifecycleHooks lifecycleHooks for the container to automate configuration before or after startup.
852
##
853
lifecycleHooks: {}
854
## @param envoy.updateStrategy [object] Strategy to use to update Pods
855
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
856
## e.g:
857
## updateStrategy:
858
## type: RollingUpdate
859
## rollingUpdate:
860
## maxSurge: 25%
861
## maxUnavailable: 25%
862
##
863
updateStrategy:
864
type: RollingUpdate
865
## @param envoy.minReadySeconds The minimum number of seconds for which a newly created Pod should be ready
866
##
867
minReadySeconds: 0
868
## @param envoy.revisionHistoryLimit The number of old history to retain to allow rollback
869
##
870
revisionHistoryLimit: 10
871
## Controller Autoscaling configuration
872
## @param envoy.autoscaling.enabled Enable autoscaling for Controller
873
## @param envoy.autoscaling.minReplicas Minimum number of Controller replicas
874
## @param envoy.autoscaling.maxReplicas Maximum number of Controller replicas
875
## @param envoy.autoscaling.targetCPU Target CPU utilization percentage
876
## @param envoy.autoscaling.targetMemory Target Memory utilization percentage
877
## @param envoy.autoscaling.behavior HPA Behavior
878
##
879
autoscaling:
880
enabled: false
881
minReplicas: 1
882
maxReplicas: 11
883
targetCPU: ""
884
targetMemory: ""
885
behavior: {}
886
## @param envoy.podAffinityPreset Envoy Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
887
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
888
## Allowed values: soft, hard
889
##
890
podAffinityPreset: ""
891
## @param envoy.podAntiAffinityPreset Envoy Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
892
## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
893
## Allowed values: soft, hard
894
##
895
podAntiAffinityPreset: ""
896
## Node affinity preset
897
## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity
898
## @param envoy.nodeAffinityPreset.type Envoy Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
899
## @param envoy.nodeAffinityPreset.key Envoy Node label key to match Ignored if `affinity` is set.
900
## @param envoy.nodeAffinityPreset.values [array] Envoy Node label values to match. Ignored if `affinity` is set.
901
##
902
nodeAffinityPreset:
903
type: ""
904
key: ""
905
## E.g.
906
## values:
907
## - e2e-az1
908
## - e2e-az2
909
##
910
values: []
911
## @param envoy.affinity [object] Affinity for Envoy pod assignment
912
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
913
## Note: podAffinityPreset, podAntiAffinityPreset, and nodeAffinityPreset will be ignored when it's set
914
##
915
affinity: {}
916
## @param envoy.nodeSelector [object] Node labels for Envoy pod assignment
917
## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/
918
##
919
nodeSelector: {}
920
## @param envoy.tolerations [array] Tolerations for Envoy pod assignment
921
## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
922
##
923
tolerations: []
924
## @param envoy.podAnnotations [object] Envoy Pod annotations
925
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
926
##
927
podAnnotations: {}
928
## @param envoy.podLabels Extra labels for Envoy pods
929
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
930
##
931
podLabels: {}
932
## Pod security context
933
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
934
## @param envoy.podSecurityContext.enabled Envoy Pod securityContext
935
## @param envoy.podSecurityContext.fsGroupChangePolicy Set filesystem group change policy
936
## @param envoy.podSecurityContext.supplementalGroups Set filesystem extra groups
937
## @param envoy.podSecurityContext.fsGroup User ID for the for the mounted volumes
938
## @param envoy.podSecurityContext.sysctls Array of sysctl options to allow
939
##
940
podSecurityContext:
941
enabled: true
942
fsGroupChangePolicy: Always
943
supplementalGroups: []
944
fsGroup: 0
945
sysctls: []
946
## Envoy container security context
947
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
948
## @param envoy.containerSecurityContext.enabled Enabled envoy containers' Security Context
949
## @param envoy.containerSecurityContext.seLinuxOptions [object,nullable] Set SELinux options in container
950
## @param envoy.containerSecurityContext.runAsUser Set envoy containers' Security Context runAsUser
951
## @param envoy.containerSecurityContext.runAsGroup Set envoy containers' Security Context runAsGroup
952
## @param envoy.containerSecurityContext.runAsNonRoot Set envoy containers' Security Context runAsNonRoot
953
## @param envoy.containerSecurityContext.readOnlyRootFilesystem Set read only root file system pod's Security Conte
954
## @param envoy.containerSecurityContext.privileged Set envoy container's Security Context privileged
955
## @param envoy.containerSecurityContext.allowPrivilegeEscalation Set envoy container's Security Context allowPrivilegeEscalation
956
## @param envoy.containerSecurityContext.capabilities.drop List of capabilities to be dropped
957
## @param envoy.containerSecurityContext.seccompProfile.type Set container's Security Context seccomp profile
958
##
959
containerSecurityContext:
960
enabled: true
961
seLinuxOptions: {}
962
runAsUser: 1001
963
runAsGroup: 1001
964
runAsNonRoot: true
965
privileged: false
966
allowPrivilegeEscalation: false
967
capabilities:
968
drop: ["ALL"]
969
seccompProfile:
970
type: "RuntimeDefault"
971
readOnlyRootFilesystem: true
972
## @param envoy.hostNetwork Envoy Pod host network access
973
## ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/#host-namespaces
974
##
975
hostNetwork: false
976
## @param envoy.dnsPolicy Envoy Pod Dns Policy's DNS Policy
977
## ref: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy
978
##
979
dnsPolicy: ClusterFirst
980
## @param envoy.tlsExistingSecret Name of the existingSecret to be use in Envoy deployment
981
##
982
tlsExistingSecret: ""
983
## @param envoy.serviceAccount.create Specifies whether a ServiceAccount should be created
984
## @param envoy.serviceAccount.name The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template
985
## @param envoy.serviceAccount.automountServiceAccountToken Whether to auto mount API credentials for a service account
986
## @param envoy.serviceAccount.annotations Annotations for service account. Evaluated as a template. Only used if `create` is `true`.
987
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#use-the-default-service-account-to-access-the-api-server
988
##
989
serviceAccount:
990
create: true
991
name: ""
992
automountServiceAccountToken: false
993
annotations: {}
994
## @param envoy.livenessProbe.enabled Enable livenessProbe
995
## @param envoy.livenessProbe.port LivenessProbe port
996
## @param envoy.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe
997
## @param envoy.livenessProbe.periodSeconds Period seconds for livenessProbe
998
## @param envoy.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe
999
## @param envoy.livenessProbe.failureThreshold Failure threshold for livenessProbe
1000
## @param envoy.livenessProbe.successThreshold Success threshold for livenessProbe
1001
##
1002
livenessProbe:
1003
enabled: true
1004
port: 8002
1005
initialDelaySeconds: 120
1006
periodSeconds: 20
1007
timeoutSeconds: 5
1008
failureThreshold: 6
1009
successThreshold: 1
1010
## @param envoy.readinessProbe.enabled Enable/disable the readiness probe
1011
## @param envoy.readinessProbe.port ReadinessProbe port
1012
## @param envoy.readinessProbe.initialDelaySeconds Delay before readiness probe is initiated
1013
## @param envoy.readinessProbe.periodSeconds How often to perform the probe
1014
## @param envoy.readinessProbe.timeoutSeconds When the probe times out
1015
## @param envoy.readinessProbe.failureThreshold Minimum consecutive failures for the probe to be considered failed after having succeeded.
1016
## @param envoy.readinessProbe.successThreshold Minimum consecutive successes for the probe to be considered successful after having failed.
1017
##
1018
readinessProbe:
1019
enabled: true
1020
port: 8002
1021
initialDelaySeconds: 10
1022
periodSeconds: 3
1023
timeoutSeconds: 1
1024
failureThreshold: 3
1025
successThreshold: 1
1026
## @param envoy.startupProbe.enabled Enable/disable the startup probe
1027
## @param envoy.startupProbe.port StartupProbe port
1028
## @param envoy.startupProbe.initialDelaySeconds Delay before startup probe is initiated
1029
## @param envoy.startupProbe.periodSeconds How often to perform the probe
1030
## @param envoy.startupProbe.timeoutSeconds When the probe times out
1031
## @param envoy.startupProbe.failureThreshold Minimum consecutive failures for the probe to be considered failed after having succeeded.
1032
## @param envoy.startupProbe.successThreshold Minimum consecutive successes for the probe to be considered successful after having failed.
1033
##
1034
startupProbe:
1035
enabled: false
1036
port: 8002
1037
initialDelaySeconds: 15
1038
periodSeconds: 10
1039
timeoutSeconds: 5
1040
failureThreshold: 3
1041
successThreshold: 1
1042
## @param envoy.customLivenessProbe Override default liveness probe
1043
##
1044
customLivenessProbe: {}
1045
## @param envoy.customReadinessProbe Override default readiness probe
1046
##
1047
customReadinessProbe: {}
1048
## @param envoy.customStartupProbe Override default startup probe
1049
##
1050
customStartupProbe: {}
1051
## @param envoy.terminationGracePeriodSeconds Envoy termination grace period in seconds
1052
##
1053
terminationGracePeriodSeconds: 300
1054
## @param envoy.logLevel Envoy log level
1055
##
1056
logLevel: info
1057
## Envoy Service properties
1058
##
1059
service:
1060
## @param envoy.service.name envoy service name
1061
##
1062
name: ""
1063
## The multi az feature renders multiple service, so you could attach different service provider loadbalancer to it.
1064
## This feature is primarily used to achieve a high availability with multiple loadbalancer
1065
## @param envoy.service.multiAz.enabled enables the rendering of the multiple services
1066
## @param envoy.service.multiAz.zones defines different zones their annotations and loadBalancerIPs
1067
##
1068
multiAz:
1069
enabled: false
1070
zones: []
1071
## Example
1072
## - name: "zone1"
1073
## loadBalancerIP: "1.2.3.4"
1074
## annotations:
1075
## service.beta.kubernetes.io/loadbalancer-zone: zone1
1076
## - name: "zone2"
1077
## loadBalancerIP: "5.6.7.8"
1078
## annotations:
1079
## service.beta.kubernetes.io/loadbalancer-zone: zone2
1080
##
1081
## @param envoy.service.targetPorts [object] Map the controller service HTTP/HTTPS port
1082
##
1083
targetPorts:
1084
http: http
1085
https: https
1086
metrics: metrics
1087
## @param envoy.service.type Type of Envoy service to create
1088
##
1089
type: LoadBalancer
1090
## @param envoy.service.externalTrafficPolicy Envoy Service external cluster policy. If `envoy.service.type` is NodePort or LoadBalancer
1091
##
1092
externalTrafficPolicy: Local
1093
## @param envoy.service.labels Labels to add to te envoy service
1094
##
1095
labels: {}
1096
## @param envoy.service.clusterIP Internal envoy cluster service IP
1097
## e.g.:
1098
## clusterIP: None
1099
##
1100
clusterIP: ""
1101
## @param envoy.service.externalIPs [array] Envoy service external IP addresses
1102
##
1103
externalIPs: []
1104
## @param envoy.service.loadBalancerIP IP address to assign to load balancer (if supported)
1105
##
1106
loadBalancerIP: ""
1107
## @param envoy.service.loadBalancerSourceRanges [array] List of IP CIDRs allowed access to load balancer (if supported)
1108
##
1109
loadBalancerSourceRanges: []
1110
## @param envoy.service.loadBalancerClass Envoy service Load Balancer Class
1111
## ref https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class
1112
##
1113
loadBalancerClass: ""
1114
## @param envoy.service.ipFamilyPolicy [string], support SingleStack, PreferDualStack and RequireDualStack
1115
##
1116
ipFamilyPolicy: ""
1117
## @param envoy.service.ipFamilies [array] List of IP families (e.g. IPv4, IPv6) assigned to the service.
1118
## Ref: https://kubernetes.io/docs/concepts/services-networking/dual-stack/
1119
## E.g.
1120
## ipFamilies:
1121
## - IPv6
1122
##
1123
ipFamilies: []
1124
## @param envoy.service.annotations [object] Annotations for Envoy service
1125
##
1126
annotations: {}
1127
ports:
1128
## @param envoy.service.ports.http Sets service http port
1129
##
1130
http: 80
1131
## @param envoy.service.ports.https Sets service https port
1132
##
1133
https: 443
1134
## @param envoy.service.ports.metrics Sets service metrics port
1135
##
1136
metrics: 8002
1137
## Specify the nodePort(s) value(s) for the LoadBalancer and NodePort service types.
1138
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
1139
## @param envoy.service.nodePorts.http HTTP Port. If `envoy.service.type` is NodePort and this is non-empty
1140
## @param envoy.service.nodePorts.https HTTPS Port. If `envoy.service.type` is NodePort and this is non-empty
1141
## @param envoy.service.nodePorts.metrics Metrics Port. If `envoy.service.type` is NodePort and this is non-empty
1142
##
1143
nodePorts:
1144
http: ""
1145
https: ""
1146
metrics: ""
1147
## @param envoy.service.extraPorts [array] Extra ports to expose (normally used with the `sidecar` value)
1148
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#multi-port-services
1149
##
1150
extraPorts: []
1151
## @param envoy.service.sessionAffinity Session Affinity for Kubernetes service, can be "None" or "ClientIP"
1152
## If "ClientIP", consecutive client requests will be directed to the same Pod
1153
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies
1154
##
1155
sessionAffinity: None
1156
## @param envoy.service.sessionAffinityConfig Additional settings for the sessionAffinity
1157
## sessionAffinityConfig:
1158
## clientIP:
1159
## timeoutSeconds: 300
1160
##
1161
sessionAffinityConfig: {}
1162
## @param envoy.service.exposeMetrics Setting to expose the metrics port in the service
1163
exposeMetrics: false
1164
## Network Policies
1165
## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/
1166
##
1167
networkPolicy:
1168
## @param envoy.networkPolicy.enabled Specifies whether a NetworkPolicy should be created
1169
##
1170
enabled: true
1171
## @param envoy.networkPolicy.allowExternal Don't require server label for connections
1172
## The Policy model to apply. When set to false, only pods with the correct
1173
## server label will have network access to the ports server is listening
1174
## on. When true, server will accept connections from any source
1175
## (with the correct destination port).
1176
##
1177
allowExternal: true
1178
## @param envoy.networkPolicy.allowExternalEgress Allow the pod to access any range of port and all destinations.
1179
##
1180
allowExternalEgress: true
1181
## @param envoy.networkPolicy.extraIngress [array] Add extra ingress rules to the NetworkPolicy
1182
## e.g:
1183
## extraIngress:
1184
## - ports:
1185
## - port: 1234
1186
## from:
1187
## - podSelector:
1188
## - matchLabels:
1189
## - role: frontend
1190
## - podSelector:
1191
## - matchExpressions:
1192
## - key: role
1193
## operator: In
1194
## values:
1195
## - frontend
1196
extraIngress: []
1197
## @param envoy.networkPolicy.extraEgress [array] Add extra ingress rules to the NetworkPolicy
1198
## e.g:
1199
## extraEgress:
1200
## - ports:
1201
## - port: 1234
1202
## to:
1203
## - podSelector:
1204
## - matchLabels:
1205
## - role: frontend
1206
## - podSelector:
1207
## - matchExpressions:
1208
## - key: role
1209
## operator: In
1210
## values:
1211
## - frontend
1212
##
1213
extraEgress: []
1214
## @param envoy.networkPolicy.ingressNSMatchLabels [object] Labels to match to allow traffic from other namespaces
1215
## @param envoy.networkPolicy.ingressNSPodMatchLabels [object] Pod labels to match to allow traffic from other namespaces
1216
##
1217
ingressNSMatchLabels: {}
1218
ingressNSPodMatchLabels: {}
1219
## @param envoy.useHostPort.http Enable/disable `hostPort` for TCP/80
1220
## @param envoy.useHostPort.https Enable/disable `hostPort` TCP/443
1221
## @param envoy.useHostPort.metrics Enable/disable `hostPort` for TCP/8002
1222
##
1223
useHostPort:
1224
http: false
1225
https: false
1226
metrics: false
1227
## @param envoy.useHostIP Enable/disable `hostIP`
1228
##
1229
useHostIP: false
1230
## @param envoy.hostPorts.http Sets `hostPort` http port
1231
## @param envoy.hostPorts.https Sets `hostPort` https port
1232
## @param envoy.hostPorts.metrics Sets `hostPort` metrics port
1233
##
1234
hostPorts:
1235
http: 80
1236
https: 443
1237
metrics: 8002
1238
## @param envoy.hostIPs.http Sets `hostIP` http IP
1239
## @param envoy.hostIPs.https Sets `hostIP` https IP
1240
## @param envoy.hostIPs.metrics Sets `hostIP` metrics IP
1241
##
1242
hostIPs:
1243
http: 127.0.0.1
1244
https: 127.0.0.1
1245
metrics: 127.0.0.1
1246
## Configures the ports the Envoy proxy listens on
1247
## @param envoy.containerPorts.http Sets http port inside Envoy pod (change this to >1024 to run envoy as a non-root user)
1248
## @param envoy.containerPorts.https Sets https port inside Envoy pod (change this to >1024 to run envoy as a non-root user)
1249
## @param envoy.containerPorts.metrics Sets metrics port inside Envoy pod (change this to >1024 to run envoy as a non-root user)
1250
##
1251
containerPorts:
1252
http: 8080
1253
https: 8443
1254
metrics: 8002
1255
## @param envoy.initContainers [array] Attach additional init containers to Envoy pods
1256
## For example:
1257
## initContainers:
1258
## - name: your-image-name
1259
## image: your-image
1260
## imagePullPolicy: Always
1261
##
1262
initContainers: []
1263
## @param envoy.sidecars Add additional sidecar containers to the Envoy pods
1264
## Example:
1265
## sidecars:
1266
## - name: your-image-name
1267
## image: your-image
1268
## imagePullPolicy: Always
1269
## ports:
1270
## - name: portname
1271
## containerPort: 1234
1272
##
1273
sidecars: []
1274
## @param envoy.extraVolumes [array] Array to add extra volumes
1275
##
1276
extraVolumes: []
1277
## @param envoy.extraVolumeMounts [array] Array to add extra mounts (normally used with extraVolumes)
1278
##
1279
extraVolumeMounts: []
1280
## @param envoy.extraEnvVars [array] Array containing extra env vars to be added to all Envoy containers
1281
## For example:
1282
## extraEnvVars:
1283
## - name: MY_ENV_VAR
1284
## value: env_var_value
1285
##
1286
extraEnvVars: []
1287
## @param envoy.extraEnvVarsCM ConfigMap containing extra env vars to be added to all Envoy containers
1288
##
1289
extraEnvVarsCM: ""
1290
## @param envoy.extraEnvVarsSecret Secret containing extra env vars to be added to all Envoy containers
1291
##
1292
extraEnvVarsSecret: ""
1293
## PodDisruptionBudget for default backend
1294
## Envoy Pod Disruption Budget configuration
1295
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
1296
## @param envoy.pdb.create Enable Pod Disruption Budget configuration
1297
## @param envoy.pdb.minAvailable Minimum number/percentage of Default backend pods that should remain scheduled
1298
## @param envoy.pdb.maxUnavailable Maximum number/percentage of Default backend pods that should remain scheduled
1299
##
1300
pdb:
1301
create: true
1302
minAvailable: ""
1303
maxUnavailable: ""
1304
## Default init Containers
1305
##
1306
defaultInitContainers:
1307
## 'init-config' init container
1308
## Bootstrap Envoy configuration so it's ready to be consumed by Envoy "main" container
1309
##
1310
initConfig:
1311
## Configure "init-config" init-container Security Context
1312
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
1313
## @param envoy.defaultInitContainers.initConfig.containerSecurityContext.enabled Enabled "init-config" init-containers' Security Context
1314
## @param envoy.defaultInitContainers.initConfig.containerSecurityContext.seLinuxOptions [object,nullable] Set SELinux options in "init-config" init-containers
1315
## @param envoy.defaultInitContainers.initConfig.containerSecurityContext.runAsUser Set runAsUser in "init-config" init-containers' Security Context
1316
## @param envoy.defaultInitContainers.initConfig.containerSecurityContext.runAsGroup Set runAsGroup in "init-config" init-containers' Security Context
1317
## @param envoy.defaultInitContainers.initConfig.containerSecurityContext.runAsNonRoot Set runAsNonRoot in "init-config" init-containers' Security Context
1318
## @param envoy.defaultInitContainers.initConfig.containerSecurityContext.privileged Set privileged in "init-config" init-containers' Security Context
1319
## @param envoy.defaultInitContainers.initConfig.containerSecurityContext.readOnlyRootFilesystem Set readOnlyRootFilesystem in "init-config" init-containers' Security Context
1320
## @param envoy.defaultInitContainers.initConfig.containerSecurityContext.allowPrivilegeEscalation Set allowPrivilegeEscalation in "init-config" init-containers' Security Context
1321
## @param envoy.defaultInitContainers.initConfig.containerSecurityContext.capabilities.drop List of capabilities to be dropped in "init-config" init-containers
1322
## @param envoy.defaultInitContainers.initConfig.containerSecurityContext.seccompProfile.type Set seccomp profile in "init-config" init-containers
1323
##
1324
containerSecurityContext:
1325
enabled: true
1326
seLinuxOptions: {}
1327
runAsUser: 1001
1328
runAsGroup: 1001
1329
runAsNonRoot: true
1330
privileged: false
1331
readOnlyRootFilesystem: true
1332
allowPrivilegeEscalation: false
1333
capabilities:
1334
drop: ["ALL"]
1335
seccompProfile:
1336
type: "RuntimeDefault"
1337
## Envoy "init-config" init container resource requests and limits
1338
## ref: http://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
1339
## @param envoy.defaultInitContainers.initConfig.resourcesPreset Set Envoy "init-config" init container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if envoy.defaultInitContainers.initConfig.resources is set (envoy.defaultInitContainers.initConfig.resources is recommended for production).
1340
## More information: https://github.com/iamguarded/charts/blob/main/iamguarded/common/templates/_resources.tpl#L15
1341
##
1342
resourcesPreset: "nano"
1343
## @param envoy.defaultInitContainers.initConfig.resources Set Envoy "init-config" init container requests and limits for different resources like CPU or memory (essential for production workloads)
1344
## E.g:
1345
## resources:
1346
## requests:
1347
## cpu: 2
1348
## memory: 512Mi
1349
## limits:
1350
## cpu: 3
1351
## memory: 1024Mi
1352
##
1353
resources: {}
1354
## @section Gateway API parameters
1355
##
1356
gatewayAPI:
1357
## @param gatewayAPI.manageCRDs Manage the creation, upgrade and deletion of Gateway API CRDs.
1358
##
1359
manageCRDs: false
1360
## @section Default backend parameters
1361
##
1362
1363
## Default 404 backend
1364
##
1365
defaultBackend:
1366
## @param defaultBackend.enabled Enable a default backend based on NGINX
1367
##
1368
enabled: false
1369
## Iamguarded NGINX image
1370
## ref: https://hub.docker.com/r/iamguarded/nginx/tags/
1371
## @param defaultBackend.image.registry [default: REGISTRY_NAME] Default backend image registry
1372
## @param defaultBackend.image.repository [default: REPOSITORY_NAME/nginx] Default backend image name
1373
## @skip defaultBackend.image.tag Default backend image tag
1374
## @param defaultBackend.image.digest Default backend image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
1375
## @param defaultBackend.image.pullPolicy Image pull policy
1376
## @param defaultBackend.image.pullSecrets [array] Specify docker-registry secret names as an array
1377
##
1378
image:
1379
registry: cgr.dev
1380
repository: chainguard-private/nginx-iamguarded
1381
tag: 1.31.8
1382
digest: ""
1383
## Specify a imagePullPolicy
1384
## ref: https://kubernetes.io/docs/concepts/containers/images/#pre-pulled-images
1385
##
1386
pullPolicy: IfNotPresent
1387
## Optionally specify an array of imagePullSecrets.
1388
## Secrets must be manually created in the namespace.
1389
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
1390
## Example:
1391
## pullSecrets:
1392
## - myRegistryKeySecretName
1393
##
1394
pullSecrets: []
1395
## @param defaultBackend.extraArgs [object] Additional command line arguments to pass to NGINX container
1396
##
1397
extraArgs: {}
1398
## @param defaultBackend.lifecycleHooks lifecycleHooks for the container to automate configuration before or after startup.
1399
##
1400
lifecycleHooks: {}
1401
## @param defaultBackend.extraEnvVars [array] Array containing extra env vars to be added to all Contour containers
1402
## For example:
1403
## extraEnvVars:
1404
## - name: MY_ENV_VAR
1405
## value: env_var_value
1406
##
1407
extraEnvVars: []
1408
## @param defaultBackend.extraEnvVarsCM ConfigMap containing extra env vars to be added to all Contour containers
1409
##
1410
extraEnvVarsCM: ""
1411
## @param defaultBackend.extraEnvVarsSecret Secret containing extra env vars to be added to all Contour containers
1412
##
1413
extraEnvVarsSecret: ""
1414
## @param defaultBackend.extraVolumes [array] Array to add extra volumes
1415
##
1416
extraVolumes: []
1417
## @param defaultBackend.extraVolumeMounts [array] Array to add extra mounts (normally used with extraVolumes)
1418
##
1419
extraVolumeMounts: []
1420
## @param defaultBackend.initContainers [array] Attach additional init containers to the http backend pods
1421
## For example:
1422
## initContainers:
1423
## - name: your-image-name
1424
## image: your-image
1425
## imagePullPolicy: Always
1426
##
1427
initContainers: []
1428
## @param defaultBackend.sidecars [array] Add additional sidecar containers to the default backend
1429
## Example:
1430
## sidecars:
1431
## - name: your-image-name
1432
## image: your-image
1433
## imagePullPolicy: Always
1434
## ports:
1435
## - name: portname
1436
## containerPort: 1234
1437
##
1438
sidecars: []
1439
## Configures the ports the http backend listens on
1440
## @param defaultBackend.containerPorts.http Set http port inside Contour pod
1441
##
1442
containerPorts:
1443
http: 8001
1444
## @param defaultBackend.updateStrategy Strategy to use to update Pods
1445
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#update-strategies
1446
##
1447
updateStrategy: {}
1448
## @param defaultBackend.command Override default command
1449
##
1450
command: []
1451
## @param defaultBackend.args Override default args
1452
##
1453
args: []
1454
## @param defaultBackend.hostAliases [array] Add deployment host aliases
1455
## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
1456
##
1457
hostAliases: []
1458
## @param defaultBackend.replicaCount Desired number of default backend pods
1459
##
1460
replicaCount: 1
1461
## Default backend pods' Security Context
1462
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
1463
## @param defaultBackend.podSecurityContext.enabled Default backend Pod securityContext
1464
## @param defaultBackend.podSecurityContext.fsGroupChangePolicy Set filesystem group change policy
1465
## @param defaultBackend.podSecurityContext.sysctls Set kernel settings using the sysctl interface
1466
## @param defaultBackend.podSecurityContext.supplementalGroups Set filesystem extra groups
1467
## @param defaultBackend.podSecurityContext.fsGroup Set Default backend Pod's Security Context fsGroup
1468
##
1469
podSecurityContext:
1470
enabled: true
1471
fsGroupChangePolicy: Always
1472
sysctls: []
1473
supplementalGroups: []
1474
fsGroup: 1001
1475
## Default backend containers' Security Context (only main container)
1476
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
1477
## @param defaultBackend.containerSecurityContext.enabled Enabled defaultBackend containers' Security Context
1478
## @param defaultBackend.containerSecurityContext.seLinuxOptions [object,nullable] Set SELinux options in container
1479
## @param defaultBackend.containerSecurityContext.runAsUser Set defaultBackend containers' Security Context runAsUser
1480
## @param defaultBackend.containerSecurityContext.runAsGroup Set defaultBackend containers' Security Context runAsGroup
1481
## @param defaultBackend.containerSecurityContext.runAsNonRoot Set defaultBackend containers' Security Context runAsNonRoot
1482
## @param defaultBackend.containerSecurityContext.readOnlyRootFilesystem Set read only root file system pod's Security Conte
1483
## @param defaultBackend.containerSecurityContext.privileged Set defaultBackend container's Security Context privileged
1484
## @param defaultBackend.containerSecurityContext.allowPrivilegeEscalation Set defaultBackend container's Security Context allowPrivilegeEscalation
1485
## @param defaultBackend.containerSecurityContext.capabilities.drop List of capabilities to be dropped
1486
## @param defaultBackend.containerSecurityContext.seccompProfile.type Set container's Security Context seccomp profile
1487
##
1488
containerSecurityContext:
1489
enabled: true
1490
seLinuxOptions: {}
1491
runAsUser: 1001
1492
runAsGroup: 1001
1493
runAsNonRoot: true
1494
privileged: false
1495
allowPrivilegeEscalation: false
1496
capabilities:
1497
drop: ["ALL"]
1498
seccompProfile:
1499
type: "RuntimeDefault"
1500
readOnlyRootFilesystem: true
1501
## Default backend containers' resource requests and limits
1502
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
1503
## We usually recommend not to specify default resources and to leave this as a conscious
1504
## choice for the user. This also increases chances charts run on environments with little
1505
## resources, such as Minikube.
1506
## @param defaultBackend.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if defaultBackend.resources is set (defaultBackend.resources is recommended for production).
1507
## More information: https://github.com/iamguarded/charts/blob/main/iamguarded/common/templates/_resources.tpl#L15
1508
##
1509
resourcesPreset: "nano"
1510
## @param defaultBackend.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
1511
## Example:
1512
## resources:
1513
## requests:
1514
## cpu: 2
1515
## memory: 512Mi
1516
## limits:
1517
## cpu: 3
1518
## memory: 1024Mi
1519
##
1520
resources: {}
1521
## Default backend containers' liveness probe. Evaluated as a template.
1522
## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes
1523
## @param defaultBackend.livenessProbe.enabled Enable livenessProbe
1524
## @param defaultBackend.livenessProbe.httpGet [object] Path, port and scheme for the livenessProbe
1525
## @param defaultBackend.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe
1526
## @param defaultBackend.livenessProbe.periodSeconds Period seconds for livenessProbe
1527
## @param defaultBackend.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe
1528
## @param defaultBackend.livenessProbe.failureThreshold Failure threshold for livenessProbe
1529
## @param defaultBackend.livenessProbe.successThreshold Success threshold for livenessProbe
1530
##
1531
livenessProbe:
1532
enabled: true
1533
failureThreshold: 3
1534
initialDelaySeconds: 30
1535
periodSeconds: 10
1536
successThreshold: 1
1537
timeoutSeconds: 5
1538
## Default backend containers' readiness probe. Evaluated as a template.
1539
## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes
1540
## @param defaultBackend.readinessProbe.enabled Enable readinessProbe
1541
## @param defaultBackend.readinessProbe.httpGet [object] Path, port and scheme for the readinessProbe
1542
## @param defaultBackend.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe
1543
## @param defaultBackend.readinessProbe.periodSeconds Period seconds for readinessProbe
1544
## @param defaultBackend.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe
1545
## @param defaultBackend.readinessProbe.failureThreshold Failure threshold for readinessProbe
1546
## @param defaultBackend.readinessProbe.successThreshold Success threshold for readinessProbe
1547
##
1548
readinessProbe:
1549
enabled: true
1550
failureThreshold: 6
1551
initialDelaySeconds: 0
1552
periodSeconds: 5
1553
successThreshold: 1
1554
timeoutSeconds: 5
1555
## @param defaultBackend.startupProbe.enabled Enable/disable the startup probe
1556
## @param defaultBackend.startupProbe.initialDelaySeconds Delay before startup probe is initiated
1557
## @param defaultBackend.startupProbe.periodSeconds How often to perform the probe
1558
## @param defaultBackend.startupProbe.timeoutSeconds When the probe times out
1559
## @param defaultBackend.startupProbe.failureThreshold Minimum consecutive failures for the probe to be considered failed after having succeeded.
1560
## @param defaultBackend.startupProbe.successThreshold Minimum consecutive successes for the probe to be considered successful after having failed.
1561
##
1562
startupProbe:
1563
enabled: false
1564
initialDelaySeconds: 15
1565
periodSeconds: 10
1566
timeoutSeconds: 5
1567
failureThreshold: 3
1568
successThreshold: 1
1569
## @param defaultBackend.customLivenessProbe [object] Override default liveness probe, it overrides the default one (evaluated as a template)
1570
##
1571
customLivenessProbe: {}
1572
## @param defaultBackend.customReadinessProbe [object] Override default readiness probe, it overrides the default one (evaluated as a template)
1573
##
1574
customReadinessProbe: {}
1575
## @param defaultBackend.customStartupProbe Override default startup probe
1576
##
1577
customStartupProbe: {}
1578
## @param defaultBackend.podLabels [object] Extra labels for Controller pods
1579
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
1580
##
1581
podLabels: {}
1582
## @param defaultBackend.podAnnotations [object] Annotations for Controller pods
1583
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
1584
##
1585
podAnnotations: {}
1586
## @param defaultBackend.priorityClassName Priority class assigned to the pods
1587
## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass
1588
##
1589
priorityClassName: ""
1590
## @param defaultBackend.schedulerName Name of the k8s scheduler (other than default)
1591
## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
1592
##
1593
schedulerName: ""
1594
## @param defaultBackend.terminationGracePeriodSeconds In seconds, time the given to the default backend pod needs to terminate gracefully
1595
## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod/#termination-of-pods
1596
##
1597
terminationGracePeriodSeconds: 60
1598
## @param defaultBackend.topologySpreadConstraints Topology Spread Constraints for pod assignment
1599
## https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
1600
## The value is evaluated as a template
1601
##
1602
topologySpreadConstraints: []
1603
## @param defaultBackend.podAffinityPreset Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
1604
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
1605
## Allowed values: soft, hard
1606
##
1607
podAffinityPreset: ""
1608
## @param defaultBackend.podAntiAffinityPreset Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
1609
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
1610
## Allowed values: soft, hard
1611
##
1612
podAntiAffinityPreset: soft
1613
## Node affinity preset
1614
## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity
1615
## @param defaultBackend.nodeAffinityPreset.type Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
1616
## @param defaultBackend.nodeAffinityPreset.key Node label key to match. Ignored if `affinity` is set.
1617
## @param defaultBackend.nodeAffinityPreset.values [array] Node label values to match. Ignored if `affinity` is set.
1618
##
1619
nodeAffinityPreset:
1620
type: ""
1621
key: ""
1622
## E.g.
1623
## values:
1624
## - e2e-az1
1625
## - e2e-az2
1626
##
1627
values: []
1628
## @param defaultBackend.affinity [object] Affinity for pod assignment. Evaluated as a template.
1629
## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
1630
## Note: defaultBackend.podAffinityPreset, defaultBackend.podAntiAffinityPreset, and defaultBackend.nodeAffinityPreset will be ignored when it's set
1631
##
1632
affinity: {}
1633
## @param defaultBackend.nodeSelector [object] Node labels for pod assignment. Evaluated as a template.
1634
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/
1635
##
1636
nodeSelector: {}
1637
## @param defaultBackend.tolerations [array] Tolerations for pod assignment. Evaluated as a template.
1638
## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
1639
##
1640
tolerations: []
1641
## Default backend Service parameters
1642
## @param defaultBackend.service.type Service type
1643
## @param defaultBackend.service.ports.http Service port
1644
## @param defaultBackend.service.annotations Annotations to add to the service
1645
##
1646
service:
1647
type: ClusterIP
1648
ports:
1649
http: 80
1650
annotations: {}
1651
## Network Policies
1652
## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/
1653
##
1654
networkPolicy:
1655
## @param defaultBackend.networkPolicy.enabled Specifies whether a NetworkPolicy should be created
1656
##
1657
enabled: true
1658
## @param defaultBackend.networkPolicy.allowExternal Don't require server label for connections
1659
## The Policy model to apply. When set to false, only pods with the correct
1660
## server label will have network access to the ports server is listening
1661
## on. When true, server will accept connections from any source
1662
## (with the correct destination port).
1663
##
1664
allowExternal: true
1665
## @param defaultBackend.networkPolicy.allowExternalEgress Allow the pod to access any range of port and all destinations.
1666
##
1667
allowExternalEgress: true
1668
## @param defaultBackend.networkPolicy.extraIngress [array] Add extra ingress rules to the NetworkPolicy
1669
## e.g:
1670
## extraIngress:
1671
## - ports:
1672
## - port: 1234
1673
## from:
1674
## - podSelector:
1675
## - matchLabels:
1676
## - role: frontend
1677
## - podSelector:
1678
## - matchExpressions:
1679
## - key: role
1680
## operator: In
1681
## values:
1682
## - frontend
1683
extraIngress: []
1684
## @param defaultBackend.networkPolicy.extraEgress [array] Add extra ingress rules to the NetworkPolicy
1685
## e.g:
1686
## extraEgress:
1687
## - ports:
1688
## - port: 1234
1689
## to:
1690
## - podSelector:
1691
## - matchLabels:
1692
## - role: frontend
1693
## - podSelector:
1694
## - matchExpressions:
1695
## - key: role
1696
## operator: In
1697
## values:
1698
## - frontend
1699
##
1700
extraEgress: []
1701
## @param defaultBackend.networkPolicy.ingressNSMatchLabels [object] Labels to match to allow traffic from other namespaces
1702
## @param defaultBackend.networkPolicy.ingressNSPodMatchLabels [object] Pod labels to match to allow traffic from other namespaces
1703
##
1704
ingressNSMatchLabels: {}
1705
ingressNSPodMatchLabels: {}
1706
## PodDisruptionBudget for default backend
1707
## Default backend Pod Disruption Budget configuration
1708
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
1709
## @param defaultBackend.pdb.create Enable Pod Disruption Budget configuration
1710
## @param defaultBackend.pdb.minAvailable Minimum number/percentage of Default backend pods that should remain scheduled
1711
## @param defaultBackend.pdb.maxUnavailable Maximum number/percentage of Default backend pods that should remain scheduled
1712
##
1713
pdb:
1714
create: true
1715
minAvailable: ""
1716
maxUnavailable: ""
1717
## Ingress parameters
1718
##
1719
ingress:
1720
## @param ingress.enabled Ingress configuration enabled
1721
## Ref: https://kubernetes.io/docs/concepts/services-networking/ingress/
1722
##
1723
## Enable Ingress.
1724
##
1725
enabled: false
1726
## @param ingress.apiVersion Force Ingress API version (automatically detected if not set)
1727
##
1728
apiVersion: ""
1729
## @param ingress.certManager Add annotations for cert-manager
1730
##
1731
certManager: false
1732
## @param ingress.annotations Annotations to be added to the web ingress.
1733
## Example:
1734
## kubernetes.io/ingress.class: nginx
1735
## kubernetes.io/tls-acme: 'true'
1736
##
1737
annotations: {}
1738
## Either `hosts` or `rulesOverride` must be provided if Ingress is enabled.
1739
## `hosts` sets up the Ingress with default rules per provided hostname.
1740
## @param ingress.hostname Hostname for the Ingress object
1741
##
1742
hostname: contour.local
1743
## @param ingress.path The Path to Concourse
1744
##
1745
path: /
1746
## @param ingress.rulesOverride Ingress rules override
1747
## Either `hosts` or `rulesOverride` must be provided if Ingress is enabled.
1748
## `rulesOverride` allows the user to define the full set of ingress rules, for more complex Ingress setups.
1749
##
1750
rulesOverride: []
1751
## @param ingress.selfSigned Create a TLS secret for this ingress record using self-signed certificates generated by Helm
1752
##
1753
selfSigned: false
1754
## @param ingress.ingressClassName IngressClass that will be be used to implement the Ingress (Kubernetes 1.18+)
1755
##
1756
ingressClassName: ""
1757
## @param ingress.extraPaths Add additional arbitrary paths that may need to be added to the ingress under the main host.
1758
## For example: The ALB ingress controller requires a special rule for handling SSL redirection.
1759
##
1760
extraPaths: []
1761
## @param ingress.tls TLS configuration.
1762
## Secrets must be manually created in the namespace.
1763
## Example:
1764
## - secretName: concourse-web-tls
1765
## hosts:
1766
## - concourse.domain.com
1767
##
1768
tls: false
1769
## @param ingress.pathType Ingress Path type
1770
##
1771
pathType: ImplementationSpecific
1772
## @param ingress.extraHosts The list of additional hostnames to be covered with this ingress record.
1773
## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array
1774
## extraHosts:
1775
## - name: concourse.local
1776
## path: /
1777
##
1778
extraHosts: []
1779
## @param ingress.extraTls The tls configuration for additional hostnames to be covered with this ingress record.
1780
## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls
1781
## extraTls:
1782
## - hosts:
1783
## - concourse.local
1784
## secretName: concourse.local-tls
1785
##
1786
extraTls: []
1787
## @param ingress.secrets If you're providing your own certificates, please use this to add the certificates as secrets
1788
## key and certificate should start with -----BEGIN CERTIFICATE----- or
1789
## -----BEGIN RSA PRIVATE KEY-----
1790
##
1791
## name should line up with a tlsSecret set further up
1792
## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set
1793
##
1794
## It is also possible to create and manage the certificates outside of this helm chart
1795
## Please see README.md for more information
1796
## Example:
1797
## - name: concourse.local-tls
1798
## key:
1799
## certificate:
1800
##
1801
secrets: []
1802
## @param ingress.extraRules Additional rules to be covered with this ingress record
1803
## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-rules
1804
## e.g:
1805
## extraRules:
1806
## - host: example.local
1807
## http:
1808
## path: /
1809
## backend:
1810
## service:
1811
## name: example-svc
1812
## port:
1813
## name: http
1814
##
1815
extraRules: []
1816
## @section Metrics parameters
1817
##
1818
metrics:
1819
## Prometheus Operator service monitors
1820
##
1821
serviceMonitor:
1822
## @param metrics.serviceMonitor.namespace Specify if the servicemonitors will be deployed into a different namespace (blank deploys into same namespace as chart)
1823
##
1824
namespace: ""
1825
## @param metrics.serviceMonitor.enabled Specify if a servicemonitor will be deployed for prometheus-operator.
1826
##
1827
enabled: false
1828
## @param metrics.serviceMonitor.jobLabel Specify the jobLabel to use for the prometheus-operator
1829
##
1830
jobLabel: "app.kubernetes.io/name"
1831
## @param metrics.serviceMonitor.interval Specify the scrape interval if not specified use default prometheus scrapeIntervall, the Prometheus default scrape interval is used.
1832
##
1833
interval: ""
1834
## @param metrics.serviceMonitor.metricRelabelings [array] Specify additional relabeling of metrics.
1835
##
1836
metricRelabelings: []
1837
## @param metrics.serviceMonitor.relabelings [array] Specify general relabeling.
1838
##
1839
relabelings: []
1840
## @param metrics.serviceMonitor.honorLabels Specify honorLabels parameter to add the scrape endpoint
1841
##
1842
honorLabels: false
1843
## @param metrics.serviceMonitor.scrapeTimeout The timeout after which the scrape is ended
1844
##
1845
scrapeTimeout: ""
1846
## @param metrics.serviceMonitor.selector Specify honorLabels parameter to add the scrape endpoint
1847
##
1848
selector: {}
1849
## @param metrics.serviceMonitor.labels Extra labels for the ServiceMonitor
1850
##
1851
labels: {}
1852
## Prometheus Operator prometheusRules
1853
##
1854
prometheusRule:
1855
## @param metrics.prometheusRule.enabled Creates a Prometheus Operator prometheusRule
1856
##
1857
enabled: false
1858
## @param metrics.prometheusRule.namespace Namespace for the prometheusRule Resource (defaults to the Release Namespace)
1859
##
1860
namespace: ""
1861
## @param metrics.prometheusRule.additionalLabels Additional labels that can be used so prometheusRule will be discovered by Prometheus
1862
##
1863
additionalLabels: {}
1864
## @param metrics.prometheusRule.rules Prometheus Rule definitions
1865
##
1866
rules: []
1867
## @section Other parameters
1868
##
1869
1870
## @param rbac.create Create the RBAC roles for API accessibility
1871
##
1872
rbac:
1873
create: true
1874
## @param rbac.rules [array] Custom RBAC rules to set
1875
## e.g:
1876
## rules:
1877
## - apiGroups:
1878
## - ""
1879
## resources:
1880
## - pods
1881
## verbs:
1882
## - get
1883
## - list
1884
##
1885
rules: []
1886
## @param tlsExistingSecret Name of the existingSecret to be use in both contour and envoy. If it is not nil `contour.certgen` will be disabled.
1887
##
1888
tlsExistingSecret: ""
1889
## @param useCertManager Use Cert-manager instead of Contour certgen to issue certificates for TLS connection between Contour and Envoy.
1890
useCertManager: false
1891

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.