-
Notifications
You must be signed in to change notification settings - Fork 57
/
Copy pathvalues.yaml
1225 lines (1131 loc) · 43.9 KB
/
values.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# Default values for testkube.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
# -- Global image parameters
# -- Important! Please, note that this will override sub-chart image parameters.
global:
# -- Global Docker image registry
imageRegistry: ""
# -- Global Docker registry secret names as an array
imagePullSecrets: []
# -- Labels to add to all deployed objects
labels: {}
# -- Annotations to add to all deployed objects
annotations: {}
# -- Node labels to add to all deployed Pods
nodeSelector: {}
# -- Affinity rules to add to all deployed Pods
affinity: {}
# -- Tolerations to add to all deployed pods
tolerations:
- key: kubernetes.io/arch
operator: Equal
value: arm64
effect: NoSchedule
## Features map for the whole chart
features:
# -- Toggle whether to enable V2 log support
logsV2: false
## logs - scrape logs from v2 logs sidecar container
## init - scrape logs from init container
## scraper - scrape logs from testkube scraper container
# -- Comma-separated array of containers which should get scraped for logs
whitelistedContainers: init,logs,scraper
## Global TLS settings
tls:
# -- Toggle whether to globally skip certificate verification
#skipVerify: false
# -- Path to the PEM-encoded CA certificate file (needs to be mounted to the container previously)
caCertPath: ""
# -- Global volume settings (API & Test Jobs)
volumes:
# -- Additional volumes to be added to the Testkube API container and Test Jobs containers
additionalVolumes: []
# -- Additional volume mounts to be added to the Testkube API container and Test Jobs containers
additionalVolumeMounts: []
# -- Test Workflows configuration
testWorkflows:
# -- Create TestWorkflowTemplates to easily use the service account
createServiceAccountTemplates: true
# -- Create TestWorkflowTemplates with automatically configured execution
createOfficialTemplates: true
# -- Global TestWorkflowTemplate that will be automatically included for all executions
globalTemplate:
# -- Is global template enabled
enabled: false
# -- Name of the global template
name: global-template
# -- Specification for the global template
spec: {}
# spec:
# pod:
# imagePullSecrets:
# - name: regcred
# -- MongoDB pre-upgrade parameters
preUpgradeHook:
# -- Upgrade hook is enabled
enabled: true
# -- Upgrade hook name
name: mongodb-upgrade
## -- TTL (time to live) mechanism to limit the lifetime of Job objects that have finished execution, specified in seconds
ttlSecondsAfterFinished: 100
## -- Specific labels
labels: {}
## -- Annotations to add to the upgrade Job
annotations: {}
## -- Annotations to add to the upgrade Job's pod
podAnnotations: {}
# -- Specify image
image:
registry: docker.io
repository: bitnami/kubectl
tag: 1.28.2
pullPolicy: IfNotPresent
pullSecrets: []
# -- Specify resource limits and requests
resources: {}
# -- Create SA for upgrade hook
serviceAccount:
create: true
# -- Node labels for pod assignment.
nodeSelector: {}
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
# -- MongoDB Upgrade Pod Security Context
podSecurityContext: {}
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
# -- Security Context for MongoDB Upgrade kubectl container
securityContext: {}
# ref: https://cloud.google.com/kubernetes-engine/docs/how-to/prepare-arm-workloads-for-deployment#node-affinity-multi-arch-arm
# -- Tolerations to schedule a workload to nodes with any architecture type. Required for deployment to GKE cluster.
tolerations: []
# -- NATS pre-upgrade parameters
preUpgradeHookNATS:
# -- Upgrade hook is enabled
enabled: true
# -- Upgrade hook name
name: nats-upgrade
## -- TTL (time to live) mechanism to limit the lifetime of Job objects that have finished execution, specified in seconds
ttlSecondsAfterFinished: 100
## -- Specific labels
labels: {}
## -- Annotations to add to the upgrade Job
annotations: {}
## -- Annotations to add to the upgrade Job's pod
podAnnotations: {}
# -- Specify image
image:
registry: docker.io
repository: bitnami/kubectl
tag: 1.28.2
pullPolicy: IfNotPresent
pullSecrets: []
# -- Specify resource limits and requests
resources: {}
# -- Create SA for upgrade hook
serviceAccount:
create: true
# -- Node labels for pod assignment.
nodeSelector: {}
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
# -- MongoDB Upgrade Pod Security Context
podSecurityContext: {}
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
# -- Security Context for MongoDB Upgrade kubectl container
securityContext: {}
# ref: https://cloud.google.com/kubernetes-engine/docs/how-to/prepare-arm-workloads-for-deployment#node-affinity-multi-arch-arm
# -- Tolerations to schedule a workload to nodes with any architecture type. Required for deployment to GKE cluster.
tolerations: []
# MongoDB parameters
# For more configuration parameters of MongoDB chart please look here: https://github.com/bitnami/charts/tree/master/bitnami/mongodb#parameters
mongodb:
# -- Toggle whether to install MongoDB
enabled: true
# -- MongoDB fullname override
fullnameOverride: "testkube-mongodb"
# MongoDB Auth settings
auth:
# -- Toggle whether to enable MongoDB authentication
enabled: false
# rootPassword: "123DefaultOne321"
# -- MongoDB service settings
service:
port: "27017"
portName: "mongodb"
nodePort: true
clusterIP: ""
# -- MongoDB resource settings
resources:
requests:
cpu: 150m
memory: 100Mi
# Image built with ZCube tool so that it can be run on ARM nodes: https://github.com/ZCube/bitnami-compat/tree/main/patches
# Currently Bitnami doesn't support ARM: https://github.com/bitnami/charts/issues/7305
image:
# -- MongoDB image registry
registry: docker.io
# -- MongoDB image repository
repository: zcube/bitnami-compat-mongodb
# -- MongoDB image tag
tag: 6.0.5-debian-11-r64
# -- MongoDB image pull Secret
pullSecrets: []
# ref: https://cloud.google.com/kubernetes-engine/docs/how-to/prepare-arm-workloads-for-deployment#node-affinity-multi-arch-arm
# -- Uncomment to schedule a multi-arch image to any available architecture type in a GGP Standard k8s cluster.
# tolerations:
# - key: kubernetes.io/arch
# operator: Equal
# value: arm64
# effect: NoSchedule
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
# -- MongoDB Pod Security Context
podSecurityContext: {}
# For OpenShift clusters use the following settings:
# fsGroup: 1000670000
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
# -- Security Context for MongoDB container
containerSecurityContext: {}
# For OpenShift clusters use the following settings:
# runAsGroup: 1000670000
# -- Settings for readiness and liveness probes
readinessProbe:
enabled: true
initialDelaySeconds: 5
periodSeconds: 240
timeoutSeconds: 5
failureThreshold: 6
successThreshold: 1
livenessProbe:
enabled: true
initialDelaySeconds: 30
periodSeconds: 240
timeoutSeconds: 10
failureThreshold: 6
successThreshold: 1
## NATS chart parameter
## Tolerations to schedule a workload to nodes with any architecture type. Required for deployment to GKE cluster.
## More info: https://cloud.google.com/kubernetes-engine/docs/how-to/prepare-arm-workloads-for-deployment#node-affinity-multi-arch-arm
nats:
# -- Uncomment to override the NATS Server image options
# container:
# image:
# repository: nats
# tag: 2.10.9-alpine
# pullPolicy:
# registry:
# NATS Box container settings
# TODO remove this container after tests on dev and stage
# nats-box is A lightweight container with NATS utilities. It's not needed for nats server
# change it to
# natsBox:
# enabled: false
natsBox:
enabled: false
# -- Uncomment to override the NATS Box image options
# container:
# image:
# repository: natsio/nats-box
# tag: 0.14.1
# pullPolicy:
# registry:
# -- NATS Box tolerations settings. Uncomment to schedule a multi-arch image to any available architecture type in a GCP Standard cluster.
# podTemplate:
# merge:
# spec:
# tolerations:
# - key: kubernetes.io/arch
# operator: Equal
# value: arm64
# effect: NoSchedule
config:
merge:
max_payload: << 8MB >>
jetstream:
# -- Toggle whether to enable JetStream (should not be disabled as Testkube uses Jetstream features)
enabled: true
# Reloader container settings
reloader:
enabled: true
# -- Uncomment to override the NATS Server Config Reloader image options
# image:
# repository: natsio/nats-server-config-reloader
# tag: 0.14.1
# pullPolicy:
# registry:
testkube-logs:
# -- Testkube logs full name override
fullnameOverride: testkube-logs
# -- Testkube logs name override
nameOverride: logs
replicaCount: 1
tls:
# -- Toggle whether to enable TLS in GRPC server
enabled: false
# -- Toggle whether to require client auth
clientAuth: false
# -- If enabled, will also require a client CA certificate to be provided
mountClientCACertificate: false
certSecret:
# -- Toggle whether to mount k8s secret which contains GRPC server certificate (cert.crt, cert.key, client_ca.crt)
enabled: false
# -- Name of the grpc server certificate secret
name: "grpc-server-cert"
# -- Base path to mount the server certificate secret
baseMountPath: /etc/server-certs/grpc
# -- Path to server certificate file
certFile: "cert.crt"
# -- Path to server certificate key file
keyFile: "cert.key"
# -- Path to client ca file (used for self-signed certificates)
clientCAFile: "client_ca.crt"
storage:
# -- MinIO endpoint
endpoint: ""
# -- MinIO endpoint port
endpoint_port: "9000"
# -- MinIO Access Key ID
accessKeyId: "minio"
# -- MinIO Secret Access Key
accessKey: "minio123"
# -- k8s Secret name for storage accessKeyId
secretNameAccessKeyId: ""
# -- Key for storage accessKeyId taken from k8s secret
secretKeyAccessKeyId: ""
# -- K8s Secret Name for storage secretAccessKeyId
secretNameSecretAccessKey: ""
# -- Key for storage secretAccessKeyId taken from k8s secret
secretKeySecretAccessKey: ""
# -- MinIO Region
region: ""
# -- MinIO Token
token: ""
# -- MinIO Bucket
bucket: "testkube-logs"
# -- MinIO Expiration period in days
expiration: 0
# -- MinIO Use SSL
SSL: false
# -- Toggle whether to verify TLS certificates
skipVerify: false
# -- If enabled, will also require a CA certificate to be provided
mountCACertificate: false
certSecret:
# -- Toggle whether to mount k8s secret which contains storage client certificate (cert.crt, cert.key, ca.crt)
enabled: false
# -- Name of the storage client certificate secret
name: "storage-client-cert"
# -- Base path to mount the client certificate secret
baseMountPath: /etc/client-certs/storage
# -- Path to client certificate file
certFile: "cert.crt"
# -- Path to client certificate key file
keyFile: "cert.key"
# -- Path to ca file (used for self-signed certificates)
caFile: "ca.crt"
# -- Toggle whether to enable scraper in Testkube API
scrapperEnabled: true
# -- Toggle whether to compress artifacts in Testkube API
compressArtifacts: true
# -- Test Connection pod
testConnection:
enabled: false
# Testkube API parameters
testkube-api:
# -- Testkube API full name override
fullnameOverride: testkube-api-server
# -- Testkube API name override
nameOverride: api-server
# -- Toggle whether to deploy Testkube API RBAC
rbac:
create: true
# Multinamespace feature. Disabled by default
multinamespace:
enabled: false
# jobPodAnnotations adds annotations to the pods spawned to execute tests using
# prebuilt and container executors.
# For test workflows you can specify annotations either individually on each workflow
# or you can specify a global template (use global.testWorkflows.globalTemplate) to
# set annotations for all workflows.
jobPodAnnotations: {}
# jobAnnotations adds annotations to the jobs spawned to execute tests using
# prebuilt and container executors, when using the default job templates.
jobAnnotations: {}
## Resource requests and limits for Init Container
initContainerResources: {}
## Resource requests and limits for LogsV2 Container
logsV2ContainerResources: {}
## Resource requests and limits for Scraper Container
scraperContainerResources: {}
## Resource requests and limits for Main Container
containerResources: {}
# Custom job-container-template.yml that will be passed to Testkube API
# jobContainerTemplate: ""
#
# Custom job-scraper-template.yml that will be passed to Testkube API
# jobScraperTemplate: ""
#
# Custom job-template.yml that will be passed to Testkube API. Example:
# configValues: |
# apiVersion: batch/v1
# kind: Job
# metadata:
# labels:
# key1: value1
# key2: value2
# spec:
# template:
# metadata:
# labels:
# key1: value1
# key2: value2
# annotations:
# key1: value1
# key2: value2
# spec:
# containers:
# - name: "{{ .Name }}"
# image: {{ .Image }}
# imagePullPolicy: Always
# command:
# - "/bin/runner"
# - '{{ .Jsn }}'
# Monitoring parameters
prometheus:
# -- Use monitoring
enabled: false
# -- The name of the label to use in serviceMonitor if Prometheus is enabled
monitoringLabels: {}
# -- Scrape interval
interval: 15s
# Testkube API image parameters
image:
# -- Testkube API image registry
registry: docker.io
# -- Testkube API image name
repository: kubeshop/testkube-api-server
# Overrides the image tag whose default is the chart appVersion.
# tag: "latest"
# -- Testkube API image tag
pullPolicy: IfNotPresent
# -- Testkube API image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
digest: ""
# -- Testkube API k8s secret for private registries
pullSecrets: []
# Test Workflows toolkit image parameters
imageTwToolkit:
# -- Test Workflows image registry
registry: docker.io
# -- Test Workflows image name
repository: kubeshop/testkube-tw-toolkit
# Overrides the image tag whose default is the chart appVersion.
# tag: "latest"
# -- Test Workflows image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
digest: ""
# Test Workflows init image parameters
imageTwInit:
# -- Test Workflows image registry
registry: docker.io
# -- Test Workflows image name
repository: kubeshop/testkube-tw-init
# Overrides the image tag whose default is the chart appVersion.
# tag: "latest"
# -- Test Workflows image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
digest: ""
# -- Test Workflows image k8s secret for private registries
pullSecrets: []
# -- Extra environment variables to be set on deployment
extraEnvVars: []
# - name: FOO
# value: BAR
# -- Watch namespaces. In this case, a Role and a RoleBinding will be created for each specified namespace.
additionalNamespaces: []
## ref: https://kubernetes.io/docs/concepts/storage/volumes/
# -- Additional volumes to be added
additionalVolumes: []
## ref: https://kubernetes.io/docs/concepts/storage/volumes/
# -- Additional volume mounts to be added
additionalVolumeMounts: []
## ref: https://kubernetes.io/docs/concepts/storage/volumes/
# -- Additional volumes to be added to the Test Jobs
additionalJobVolumes: []
## ref: https://kubernetes.io/docs/concepts/storage/volumes/
# -- Additional volume mounts to be added to the Test Jobs
additionalJobVolumeMounts: []
## Service Account parameters
serviceAccount:
# -- Specifies whether a service account should be created
create: true
# -- Annotations to add to the service account
annotations: {}
# -- The name of the service account to use. If not set and create is true, a name is generated using the fullname template.
name: ""
# -- Service Account parameters
testServiceAccount:
# -- Specifies whether a service account should be created
create: true
# -- Annotations to add to the service account
annotations: {}
# Testkube Agent settings
cloud:
# -- Testkube Cloud API URL
url: "agent.testkube.io:443"
## URL of the Cloud UI
uiUrl: ""
# -- Testkube Clouc License Key (for Environment)
key: ""
tls:
# -- Toggle should the connection to Agent API in Cloud/Enterprise use secure GRPC (GRPCS) (if false, it will use insecure GRPC)
enabled: true
# -- Toggle should the client skip verifying the Agent API server cert in Cloud/Enterprise
skipVerify: false
## If specified, injects a custom CA into the list of trusted CAs. Specify a secret with the PEM encoded CA under the key specified by customCaSecretKey.
customCaSecretRef: ""
## Specify the key for the PEM encoded CA in the secret specified by customCaSecretRef.
customCaSecretKey: "ca.crt"
# -- Specifies the path to the directory (skip the trailing slash) where CA certificates should be mounted. The mounted file should container a PEM encoded CA certificate.
customCaDirPath: ""
certificate:
# -- When provided, it will use the provided certificates when authenticating with the Agent (gRPC) API (secret should contain cert.crt, key.crt and ca.crt)
secretRef: ""
# -- Default path for certificate file
certFile: /tmp/agent-cert/cert.crt
# -- Default path for certificate key file
keyFile: /tmp/agent-cert/cert.key
# -- Default path for ca file
caFile: /tmp/agent-cert/ca.crt
## Persistent cache for Docker
imageInspectionCache:
# -- Status of the persistent cache
enabled: true
# -- ConfigMap name to persist cache
name: "testkube-image-cache"
# -- TTL for image pull secrets cache (set to 0 to disable)
ttl: 30m
# ref: https://cloud.google.com/kubernetes-engine/docs/how-to/prepare-arm-workloads-for-deployment#node-affinity-multi-arch-arm
# -- Tolerations to schedule a workload to nodes with any architecture type. Required for deployment to GKE cluster.
tolerations: []
# Service parameters
service:
# -- Adapter service type for working with real k8s we should use "ClusterIP" type.
type: ClusterIP
# -- HTTP Port
port: 8088
# -- Service Annotations
annotations: {}
# -- Service labels
labels: {}
# NATS parameters
# ref: https://github.com/nats-io/nats-server
nats:
# -- Start NATS embedded server in api binary instead of separate deployment
embedded: false
# -- Use NATS
enabled: true
# -- NATS URI
uri: "nats://testkube-nats:4222"
tls:
# -- Toggle whether to enable TLS in NATS client
enabled: false
# -- Toggle whether to verify certificates
skipVerify: false
# -- If enabled, will also require a CA certificate to be provided
mountCACertificate: false
certSecret:
# -- Toggle whether to mount k8s secret which contains storage client certificate (cert.crt, cert.key, ca.crt)
enabled: false
# -- Name of the storage client certificate secret
name: "nats-client-cert"
# -- Base path to mount the client certificate secret
baseMountPath: /etc/client-certs/storage
# -- Path to client certificate file
certFile: "cert.crt"
# -- Path to client certificate key file
keyFile: "cert.key"
# -- Path to ca file (used for self-signed certificates)
caFile: "ca.crt"
# MinIO parameters
minio:
# -- Toggle whether to install MinIO
enabled: true
# -- Minio extra vars
extraEnvVars: []
# - name: FOO
# value: BAR
# Read more about access modes here: http://kubernetes.io/docs/user-guide/persistent-volumes/#access-modes
# -- PVC Access Modes for Minio. The volume is mounted as read-write by a single node.
accessModes:
- ReadWriteOnce
# -- Node labels for pod assignment.
nodeSelector: {}
# ref: https://cloud.google.com/kubernetes-engine/docs/how-to/prepare-arm-workloads-for-deployment#node-affinity-multi-arch-arm
# -- Tolerations to schedule a workload to nodes with any architecture type. Required for deployment to GKE cluster.
tolerations: []
# ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
# Note: podAffinityPreset, podAntiAffinityPreset, and nodeAffinityPreset will be ignored when it's set
# -- Affinity for pod assignment.
affinity: {}
# -- Minio image from DockerHub
image:
registry: docker.io
repository: minio/minio
tag: RELEASE.2023-09-16T01-01-47Z
pullSecrets: []
# -- ServiceAccount name to use for Minio
serviceAccountName: ""
extraVolumeMounts: []
extraVolumes: []
## k8s Secret name for Minio root username
secretUserName: ""
## Secret key for Minio root username taken from k8s secret
secretUserKey: ""
## k8s Secret name for Minio root password
secretPasswordName: ""
## Secret key for Minio root username taken from k8s secret
secretPasswordKey: ""
# -- Root username
minioRootUser: "minio"
# -- Root password
minioRootPassword: "minio123"
# -- PVC Storage Request for MinIO. Should be available in the cluster.
storage: 10Gi
# -- MinIO Resources settings
resources: {}
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
# -- MinIO Pod Security Context
podSecurityContext: {}
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
# -- Security Context for MinIO container
securityContext: {}
## Specify priorityClassName for Minio
priorityClassName: ""
## Service Monitor for MinIO
## ref: https://github.com/minio/minio/blob/master/docs/metrics/prometheus/README.md
serviceMonitor:
## Toggle whether to install ServiceMonitor
enabled: false
## Additional monitoring labels
labels: {}
## Selector labels to match
matchLabels: []
## Scrape interval
interval: 15s
# uiIngress parameters
uiIngress:
# -- Use Ingress
enabled: false
# -- Additional annotations for the Ingress resource.
annotations: {}
# e.g. annotations for NGINX Ingress Controller:
# kubernetes.io/ingress.class: nginx
# nginx.ingress.kubernetes.io/rewrite-target: /$1
# nginx.ingress.kubernetes.io/force-ssl-redirect: "false"
# nginx.ingress.kubernetes.io/ssl-redirect: "false"
# nginx.ingress.kubernetes.io/enable-cors: "true"
# nginx.ingress.kubernetes.io/cors-allow-methods: "GET"
# nginx.ingress.kubernetes.io/cors-allow-credentials: "false"
# github oauth annotations (empty by default)
# nginx.ingress.kubernetes.io/auth-url: "http://$host/oauth2/auth"
# nginx.ingress.kubernetes.io/auth-signin: "http://$host/oauth2/start?rd=$escaped_request_uri"
# nginx.ingress.kubernetes.io/auth-url: ""
# nginx.ingress.kubernetes.io/auth-signin: ""
# for websockets
# nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
# nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"
path: /results/(v\d/.*)
# -- Hostnames must be provided if Ingress is enabled.
hosts:
- testkube.example.com
tlsenabled: false
# -- Placing a host in the TLS config will indicate a certificate should be created
tls:
[]
# - hosts:
# - testkube.example.com
# secretName: testkube-cert-secret
# cliIngress parameters
cliIngress:
# -- Use ingress
enabled: false
# -- Additional annotations for the Ingress resource.
annotations: {}
# e.g. annotations for NGINX Ingress Controller:
# kubernetes.io/ingress.class: nginx
# nginx.ingress.kubernetes.io/rewrite-target: /$1
# nginx.ingress.kubernetes.io/force-ssl-redirect: "false"
# nginx.ingress.kubernetes.io/ssl-redirect: "false"
# nginx.ingress.kubernetes.io/configuration-snippet: |
# more_set_headers "X-CLI-Ingress: true";
# for websockets
# nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
# nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"
# parameters to check oauth token (by default github one)
oauth:
# -- OAuth Client ID
clientID: ""
# -- OAuth Client Secret
clientSecret: ""
# -- OAuth Provider
provider: "github"
# -- OAuth Scopes
scopes: ""
path: /results/(v\d/.*)
# -- Hostnames must be provided if Ingress is enabled.
hosts:
- testkube.example.com
# -- Toggle whether to enable TLS on the ingress
tlsenabled: false
# -- Placing a host in the TLS config will indicate a certificate should be created
tls:
[]
# - hosts:
# - testkube.example.com
# secretName: testkube-cert-secret
# Storage for Testkube API using MinIO
storage:
# -- MinIO endpoint
endpoint: ""
# -- MinIO endpoint port
endpoint_port: "9000"
# -- MinIO Access Key ID
accessKeyId: "minio"
# -- MinIO Secret Access Key
accessKey: "minio123"
# -- k8s Secret name for storage accessKeyId
secretNameAccessKeyId: ""
# -- Key for storage accessKeyId taken from k8s secret
secretKeyAccessKeyId: ""
# -- K8s Secret Name for storage secretAccessKeyId
secretNameSecretAccessKey: ""
# -- Key for storage secretAccessKeyId taken from k8s secret
secretKeySecretAccessKey: ""
# -- MinIO Region
region: ""
# -- MinIO Token
token: ""
# -- MinIO Bucket
bucket: "testkube-artifacts"
# -- MinIO Expiration period in days
expiration: 0
# -- MinIO Use SSL
SSL: false
# -- Toggle whether to verify TLS certificates
skipVerify: false
# -- If enabled, will also require a CA certificate to be provided
mountCACertificate: false
certSecret:
# -- Toggle whether to mount k8s secret which contains storage client certificate (cert.crt, cert.key, ca.crt)
enabled: false
# -- Name of the storage client certificate secret
name: "storage-client-cert"
# -- Base path to mount the client certificate secret
baseMountPath: /etc/client-certs/storage
# -- Path to client certificate file
certFile: "cert.crt"
# -- Path to client certificate key file
keyFile: "cert.key"
# -- Path to ca file (used for self-signed certificates)
caFile: "ca.crt"
# -- Toggle whether to enable scraper in Testkube API
scrapperEnabled: true
# -- Toggle whether to compress artifacts in Testkube API
compressArtifacts: true
# Logs storage for Testkube API.
logs:
# -- Log storage can either be "minio" or "mongo"
storage: "minio"
# -- Bucket should be specified if storage is "minio"
bucket: "testkube-logs"
# -- Testkube API resource requests and limits
resources:
requests:
cpu: 200m
memory: 200Mi
# MongoDB parameters
mongodb:
# -- MongoDB DSN
dsn: "mongodb://testkube-mongodb:27017"
# secretName: testkube-secrets
# secretKey: mongo-dsn
# -- Allow or prohibit writing temporary files on disk when a pipeline stage exceeds the 100 megabyte limit.
allowDiskUse: true
## -- SSL certificate secret reference
# -- k8s Secret Name for SSL Client Certificate Key File Password
# sslClientFilePassKeySecretName: sslClientFilePassKeySecretName
# -- Key for SSL Client Certificate Key File Password k8s Secret
# sslClientFilePassKeySecretKey: sslClientFilePassKeySecretKey
# -- k8s Secret Name for SSL Client Certificate Key File
# sslClientFileKeySecretName: sslClientFileKeySecretName
# -- Key for SSL Client Certificate Key File k8s Secret
# sslClientFileKeySecretKey: sslClientFileKeySecretKey
# -- k8s Secret Name for SSL CA File Key
# sslCAFileKeySecretName: sslCAFileKeySecretName
# -- Key for SSL CA File Key k8s Secret
# sslCAFileKeySecretKey: sslCAFileKeySecretKey
# -- k8s Secret Name for SSL Cert Secret
# sslCertSecretSecretName: sslCertSecretSecretName
# -- Key for SSL Cert Secret k8s Secret
# sslCertSecretSecretKey: sslCertSecretSecretKey
# -- Testkube API Liveness probe parameters
livenessProbe:
# -- Initial delay for liveness probe
initialDelaySeconds: 15
# -- Testkube API Readiness probe parameters
readinessProbe:
# -- Initial delay for readiness probe
initialDelaySeconds: 30
# -- Enable analytics for Testkube
analyticsEnabled: true
# -- Testkube timeout for pod start
podStartTimeout: "30m"
# Integration with Slack.
# ref: https://kubeshop.github.io/testkube/integrations/slack-integration/
# -- Slack token from the testkube authentication endpoint
slackToken: ""
# -- Slack secret to store slackToken, the key name should be SLACK_TOKEN
slackSecret: ""
# -- Slack config for the events, tests, testsuites, testworkflows and channels
slackConfig:
# -- default executors as base64-encoded string
executors: ""
# -- SA that is used by a job. Can be annotated with the IAM Role Arn to access S3 service in AWS Cloud.
jobServiceAccountName: ""
# -- target for cdevents emission via http(s)
cdeventsTarget: ""
# -- dashboard uri to be used in notification events
dashboardUri: ""
# -- cluster name to be used in events
clusterName: ""
# -- enable endpoint to list testkube namespace secrets
enableSecretsEndpoint: false
# -- disable secret creation for tests and test sources
disableSecretCreation: false
# -- enable only specified executors with enabled flag
enabledExecutors:
# postman-executor:
# enabled: true
# cypress-executor:
# enabled: true
# -- Execution namespaces for Testkube API to only run tests
# In this case, a Role and a RoleBinding will be created for each specified namespace.
executionNamespaces: []
# -- Namespace for test execution
# - namespace: default
# -- Whether to generate RBAC for testkube api server or use manually provided
# generateAPIServerRBAC: true
# -- Job service account name for test jobs
# jobServiceAccountName: tests-job-default
# -- Whether to generate RBAC for test job or use manually provided
# generateTestJobRBAC: true
# -- default storage class name for PVC volumes
defaultStorageClassName: ""
# storageRequest is the requested storage for PVC utilized for artifact requests.
storageRequest: "1Gi"
# -- enable k8s events for testkube events
enableK8sEvents: true
# Testkube log server parameters
testkubeLogs:
# -- GRPC address
grpcAddress: "testkube-logs:9090"
tls:
# -- Toggle whether to enable TLS in GRPC client
enabled: false
# -- Toggle whether to verify certificates
skipVerify: false
# -- If enabled, will also require a CA certificate to be provided
mountCACertificate: false
certSecret:
# -- Toggle whether to mount k8s secret which contains GRPC client certificate (cert.crt, cert.key, ca.crt)
enabled: false
# -- Name of the grpc client certificate secret
name: "grpc-client-cert"
# -- Base path to mount the client certificate secret
baseMountPath: /etc/client-certs/grpc
# -- Path to client certificate file
certFile: "cert.crt"
# -- Path to client certificate key file
keyFile: "cert.key"
# -- Path to ca file (used for self-signed certificates)
caFile: "ca.crt"
# Test Connection pod
testConnection:
# -- Toggle whether to create Test Connection pod
enabled: false
# -- Test Connection resource settings
resources: {}
# ref: https://cloud.google.com/kubernetes-engine/docs/how-to/prepare-arm-workloads-for-deployment#node-affinity-multi-arch-arm
# -- Tolerations to schedule a workload to nodes with any architecture type. Required for deployment to GKE cluster.
tolerations: []
# -- Testkube API Pod Security Context
podSecurityContext: {}
# ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
# -- Security Context for testkube-api container
securityContext: {}
## Specify priorityClassName for Testkube API
priorityClassName: ""
# -- Specify hostNetwork for Testkube API Deployment
hostNetwork: ""
# -- Specify dnsPolicy for Testkube API Deployment
dnsPolicy: ""
testkube-operator:
## deploy Operator chart
enabled: true
## namespace to deploy Testkube Operator. Default is .Release.Namespace
namespace: ""
# should roles and roles bindings be created
rbac:
create: true
# -- Testkube Operator fullname override
fullnameOverride: testkube-operator
# -- Testkube Operator name override
nameOverride: testkube-operator
# -- should the CRDs be installed
installCRD: true
# -- Number of Testkube Operator Pod replicas
replicaCount: 1
## Additional labels for Testkube Operator pod
podLabels: {}
## Additional pod annotations to Testkube Operator pod
podAnnotations: {}
# Testkube Operator image
image:
# -- Testkube Operator registry
registry: docker.io
# -- Testkube Operator repository
repository: kubeshop/testkube-operator
# -- Testkube Operator image pull policy
pullPolicy: ""
# Overrides the image tag whose default is the chart appVersion.
# tag: "1.7.1"
# -- Testkube Operator image digest
digest: ""
# -- Operator k8s secret for private registries
pullSecrets: []
# Testkube Operator rbac-proxy settings
proxy:
# Proxy Image parameters
image:
# -- Testkube Operator rbac-proxy image registry
registry: gcr.io
# -- Testkube Operator rbac-proxy image repository
repository: kubebuilder/kube-rbac-proxy
# -- Testkube Operator rbac-proxy image tag
tag: "v0.8.0"
# -- Testkube Operator rbac-proxy k8s secret for private registries
pullSecrets: []
# -- Testkube Operator rbac-proxy resource settings
resources: {}
# -- Testkube API full name
apiFullname: "testkube-api-server"
# -- Testkube API port
apiPort: 8088
# -- Testkube Operator healthcheck port
healthcheckPort: 8081
# -- Use ArgoCD sync owner references
useArgoCDSync: false
# -- Purge executions on CRD deletion
purgeExecutions: false
# Service Account parameters