-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathvalues.yaml
More file actions
306 lines (270 loc) · 13.9 KB
/
Copy pathvalues.yaml
File metadata and controls
306 lines (270 loc) · 13.9 KB
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
deployment:
# This is the name of existing roles and clusterroles to use, defaults to releaseName-role and releaseName-clusterrole
role: # Mention if you wish to use the existing role in the namespace
clusterrole: # Mention if you wish to use the existing clusterrole
serviceAccount:
# Specifies whether a ServiceAccount should be created, if already exists, the value should be false.
create: false
# The name of the ServiceAccount to use, keep empty to use default ServiceAccount.
name: # sample-serviceAccount-name
# Bind secrets to the ServiceAccount to satisfy cluster policies.
secrets:
# - <sample secret-name>
annotations:
# This is a sample annotation. You can add any annotations here. Comment out if not needed.
eks.amazonaws.com/role-arn: # arn:aws:iam::123456789012:role/example-role
custom.annotation/key: # custom-value
restartPolicy: # Defaults to Always as recommended
env:
# if you plan to pass the AUTH_TOKEN through secret store, use secret store CSI driver or External Secrets Operator, the below will be ignored.
authtoken: auth-token
harbour_id: harbour-id
ship_id: ship-id
# If the auth token, harbour id and ship id are stored in a kubernetes secret, enable the below section and provide the secret name and keys.
fromSecret:
enable: no
secretName: crane-tokens
authTokenKey: auth_token
harbourIdKey: harbor_id
shipIdKey: ship_id
# Allows the override of the default image received from BZA for the container to run. Set the key to the original value (Example: apm-image:latest). Set the value to the new repository name with a tag. Extract the appropriate version number from 'admin/ship-stats'.
imageOverride:
# Add the details below to override the default image used by Crane and default configuration.
docker_registry: # Example: "gcr.io/<custom-registry>"
craneImage: # Example: "gcr.io/<custom-registry>/blazemeter/crane"
tag: # Default: "latest-master"
auto_update: # Default: true
auto_update_running_containers: # Controls auto update of components, default false. Also, either AUTO_UPDATE or AUTO_KUBERNETES_UPDATE must be true for this option to work, depending on the platform Crane is running on.
# Example: {"blazemeter/crane:latest":"gcr.io/verdant-bulwark-278/blazemeter/crane:3.6.47"}
pullPolicy: # Default: "Always"
#executorImages: # {"taurus-cloud:latest": "pathToYourRepo/<image_name:version_number>", "torero:latest": "pathToYourRepo/<image_name:version_number>", "blazemeter/service-mock:latest": "pathToYourRepo/<image_name:version_number>", "blazemeter/mock-pc-service:latest": "pathToYourRepo/<image_name:version_number>", "blazemeter/sv-bridge:latest": "pathToYourRepo/<image_name:version_number>", "blazemeter/doduo:latest": "pathToYourRepo/<image_name:version_number>"}
executorImages:
blazemeter:latest: # "pathToYourRepo/blazemeter:version"
taurus-cloud:latest: # "pathToYourRepo/taurus-cloud:version"
torero:latest: # "pathToYourRepo/torero:version"
secrets-image:latest: # "pathToYourRepo/secrets-image:version"
blazemeter/proxy-recorder:latest: # "pathToYourRepo/proxy-recorder:version"
blazemeter/service-mock:latest: # "pathToYourRepo/service-mock:version"
sv-bridge:latest: # "pathToYourRepo/sv-bridge:version"
blazemeter/mock-pc-service:latest: # "pathToYourRepo/mock-pc-service:version"
blazemeter/group-gateway:latest: # "pathToYourRepo/group-gateway:version"
doduo:latest: # "pathToYourRepo/doduo:version"
apm-image:latest: # "pathToYourRepo/apm-image:version"
# CHECK VERSION IN THE RSS FEED
# blazemeter/charmander/microsoftedge_128.0.2739.81:latest: # "pathToYourRepo/charmander/microsoftedge_128.0.2739.81:version"
# blazemeter/charmander/safari_15.0:latest: # "pathToYourRepo/charmander/safari_15.0:version"
# blazemeter/charmander/firefox_128.0:latest: # "pathToYourRepo/charmander/firefox_128.0:version"
# blazemeter/charmander/chrome_128.0.6613.137:latest: # "pathToYourRepo/charmander/chrome_128.0.6613.137:version"
testImage: # Default: "gcr.io/verdant-bulwark-278/cranehook", used for test-hook
testTag: # Default: "latest"
# Proxy configurations here, change enable to yes, followed by http/https configuration
proxy:
enable: no
# If you have authentication required for your proxy, then you will need to add username:password@server:port
http_path: # "http://server:port"
https_path: # "https://server:port"
# The NO_PROXY settings for 127.0.0.1 and localhost (provided below) are required for the Service Virtualization integration and transaction-based Mock Services to work. If you do not enable any HTTP_PROXY or HTTPS_PROXY settings, you can skip the NO_PROXY setting.
no_proxy: # "kubernetes.default,127.0.0.1,localhost,myHostname.com"
# Configure CA Bundle here - Change enable: yes
# Add these certifates to the chart main directory, for example: we have placed certificate.crt in the chart main directory.
ca_bundle:
enable: no
request_ca_bundle: "certificate.crt"
aws_ca_bundle: "certificate2.crt"
volume:
volume_name: "volume-cm"
mount_path: "/var/cm"
readOnly: true
#For functional test only. This uses the same environment. Place the certificate in chart main directory.
gridProxy:
enable: no
a_environment: 'https://your.environment.net'
tlsKeyGrid: "certificate.key" # The private key for the domain used to run the BlazeMeter Grid proxy over HTTPS. Value in string format.
tlsCertGrid: "certificate.crt" # The public certificate for the domain used to run the BlazeMeter Grid proxy over HTTPS. Value in string format.
mount_path: "/etc/ssl/certs/doduo"
doduoPort: 9070 # The user-defined port where to run Doduo (BlazeMeter Grid Proxy). By default, Doduo listens on port 8000.
volume:
volume_name: "tls-files"
mount_path: "/etc/ssl/certs/doduo"
readOnly: true
# If you plan to enable non-privileged containers, please enable the below configuration, change enable:yes
# This will run all pods/containers (related to private location installation)as well as crane within the cluster as non_root.
# Non-root deployment requires qualifying plan and an additional feature to be enabled, please contact support for enabling this feature if your account has a qualifying plan.
non_privilege_container:
enable: no
runAsGroup: 1337
runAsUser: 1337
# Enable the service_virtualization if this Private location is going to run service-virtualisation or formerly called: mock-services
# Select the ingressType as nginx or istio, depending on your cluster ingress setup.
# Follow Blazemeter guide for more information: https://help.blazemeter.com/docs/guide/private-locations-install-blazemeter-agent-for-kubernetes-for-mock-services.html
service_virtualization:
enable: no
ingressType: # nginx or istio
credentialName: # "wildcard-credential"
web_expose_subdomain: # "mydomain.local"
# Labels to add to crane and child resources created by Crane, must be in JSON format.
labelsCrane:
enable: no
syntax: # {"label_1": "label_1_value", "label_2": "label_2_value"}
labelsExecutors:
enable: no
syntax: # {"label_1": "label_1_value", "label_2": "label_2_value"}
#Set to specify the tolerations for the crane and child resources. Must be in JSON format.
tolerationCrane:
enable: no
syntax: # [{ "effect": "NoSchedule", "key": "lifecycle", "operator": "Equal", "value": "spot" }]
tolerationExecutors:
enable: no
syntax: # [{ "effect": "NoSchedule", "key": "lifecycle", "operator": "Equal", "value": "spot" }]
#Used to configure the k8s nodeSelector field to match specific node labels for the Crane as well as child resources. Must be in JSON format.
nodeSelectorCrane:
enable: no
syntax: # {"label_1": "label_1_value", "label_2": "label_2_value"}
nodeSelectorExecutor:
enable: no
syntax: # {"label_1": "label_1_value", "label_2": "label_2_value"}
# Used to add annotations to the Crane and it's child resources. Must be in JSON format.
# "cluster-autoscaler.kubernetes.io/safe-to-evict" is set to 'false' by default for child resources.
annotationsCrane:
enable: no
syntax: # {"custom_annotation1": "value1", "custom_annotation2": "value2"}
annotationsExecutor:
enable: no
syntax: # {"custom_annotation1": "value1", "custom_annotation2": "value2"}
# CPU & Memory limits & requests for resources for crane deployment. You can also specify ephemeral storage limits for the crane.
resourcesCrane:
requests:
CPU: 250m
MEM: 512Mi
storage: #100
limits:
CPU: #1
MEM: #2Gi
storage: #1024
# CPU & Memory limits & requests for resources for child resources. You can also specify ephemeral storage limits for the child resources.
resourcesExecutors:
requests:
CPU: 1000m
MEM: 4096 # This value should be an integer unlike other values that supports k8s standard for declaring resource limits/requests.
storage: #100
limits:
CPU: #2
MEM: #8Gi
storage: #1024
#Configure Liveness & Readiness Probes, defaults are used, if not specified. See commented values below.
probes:
enable: yes
livenessProbe:
httpGet:
path: /healtz
port: # 5000
scheme: HTTP
failureThreshold: # 5
initialDelaySeconds: # 5
periodSeconds: # 15
successThreshold: # 1
timeoutSeconds: # 10
readinessProbe:
httpGet:
path: /healtz
port: # 5000
scheme: HTTP
failureThreshold: # 3
initialDelaySeconds: # 5
periodSeconds: # 15
successThreshold: # 1
timeoutSeconds: # 10
podDisruptionBudget:
enable: no
# min or max, disruptions can only support one. - https://kubernetes.io/docs/tasks/run-application/configure-pdb/
# If both are specified, minAvailable is used.
minAvailable: 1
maxUnavailable: #5
matchLabels: # {"label_1": "label_1_value", "label_2": "label_2_value"}
secretProviderClass:
enable: no
provider: aws
# This is in JSON, to allow users configure different spec, like: secretPath, secretKey, objectAlias, etc.
objects: [{ "objectName": "arn:aws:secretsmanager:ap-southeast-2:{{AWS ACCOUNT}}:secret:harbour-id-{{dummy}}","objectType": "secretsmanager","objectAlias": "harbour-id-opl"},{"objectName": "arn:aws:secretsmanager:ap-southeast-2:{{AWS ACCOUNT}}:secret:ship-id-{{dummy}}","objectType": "secretsmanager","objectAlias": "ship-id-opl"}]
secretObjects:
# Comment out the below section if you do not plan to create secrets in the namespace.
- secretName: auth-token
type: Opaque
data:
- key: auth-token-key
objectName: auth-token-opl
envName: AUTH_TOKEN
- secretName: harbour-id
type: Opaque
data:
- key: harbour-id-key
objectName: harbour-id-opl
envName: HARBOR_ID
- secretName: ship-id
type: Opaque
data:
- key: ship-id-key
objectName: ship-id-opl
envName: SHIP_ID
volume:
name: # (Optional) If not provided, will be linked with release name - see helm template
readOnly: # (Default: true)
path: /mnt/secrets
externalSecretsOperator:
enable: no
volume:
name: # (Optional) If not provided, will be linked with release name - see helm template
readOnly: # Default: true
path: # Default: /mnt/secrets
externalSecret:
name: blaze-external-secret
refreshInterval: "15s"
target:
name: blazemeter-secrets-store # Name of Kubernetes Secret to make
data:
- secretKey: ship-id # New key to make
remoteRef:
key: ship-id # Name of the Secret in Secrets Manager
property: ship-id # The JSON key within the secret
envName: SHIP_ID
- secretKey: harbour-id # New key to make
remoteRef:
key: harbour-id # Name of the Secret in Secrets Manager
property: harbour-id # The JSON key within the secret
envName: HARBOR_ID
- secretKey: auth-token # New key to make
remoteRef:
key: auth-token # Name of the Secret in Secrets Manager
property: authtoken # The JSON key within the secret
envName: AUTH_TOKEN
secretStore:
name: blaze-secret-store
provider:
# The provider can be aws, gcpsm, switch the enable flag to true for the provider you want to use.
aws:
enable: true
#role: iam-role #USE IF REQUIRED.
service: SecretsManager
region: ap-southeast-2
# Chart wiill use JWT authentication to access the AWS Secrets Manager.
# The JWT will use the serviceAccount used in this chart
# Unless the below authSecretRef is enabled
authSecretRef:
enable: false
accessKeyID:
name: #awssm-secret
key: #access-key
secretAccessKey:
name: #awssm-secret
key: #secret-access-key
gcpsm:
enable: false
projectID: your-gcp-project-id
# Chart will use the Workload Identity to access the GCP Secret Manager.
# The Workload Identity will use the serviceAccount used in this chart
# Unless the below secretRef is enabled
secretRef:
enable: false
secretAccessKeySecretRef:
name: gcpsm-secret
key: secret-access-credentials