Skip to content

Commit 7276e54

Browse files
authored
K8s: Update Helm configs for setting Node custom capabilities (#2686)
1 parent 1b42465 commit 7276e54

File tree

7 files changed

+36
-19
lines changed

7 files changed

+36
-19
lines changed

Makefile

+2-2
Original file line numberDiff line numberDiff line change
@@ -949,7 +949,7 @@ chart_render_template:
949949
RENDER_HELM_TEMPLATE_ONLY=true NAMESPACE=$(NAME) KEDA_TAG_VERSION=$(KEDA_TAG_VERSION) BUILD_DATE=$(BUILD_DATE) make chart_test_autoscaling_disabled chart_test_autoscaling_deployment_https chart_test_autoscaling_deployment chart_test_autoscaling_job_https chart_test_autoscaling_job_hostname chart_test_autoscaling_job chart_test_autoscaling_playwright_connect_grid
950950

951951
chart_test_autoscaling_disabled:
952-
PLATFORMS=$(PLATFORMS) TEST_CHROMIUM=true RELEASE_NAME=selenium SELENIUM_GRID_AUTOSCALING=false CHART_ENABLE_TRACING=true TEST_PATCHED_KEDA=$(TEST_PATCHED_KEDA) \
952+
PLATFORMS=$(PLATFORMS) TEST_CHROMIUM=true RELEASE_NAME=selenium SELENIUM_GRID_AUTOSCALING=false CHART_ENABLE_TRACING=true TEST_PATCHED_KEDA=$(TEST_PATCHED_KEDA) TEST_CUSTOM_SPECIFIC_NAME=true \
953953
SECURE_INGRESS_ONLY_GENERATE=true SELENIUM_GRID_PROTOCOL=https SELENIUM_GRID_HOST=$$(hostname -I | cut -d' ' -f1) SELENIUM_GRID_PORT=443 EXTERNAL_UPLOADER_CONFIG=true \
954954
VERSION=$(TAG_VERSION) VIDEO_TAG=$(FFMPEG_TAG_VERSION)-$(BUILD_DATE) KEDA_BASED_NAME=$(KEDA_BASED_NAME) KEDA_BASED_TAG=$(KEDA_BASED_TAG) NAMESPACE=$(NAMESPACE) BINDING_VERSION=$(BINDING_VERSION) BASE_VERSION=$(BASE_VERSION) \
955955
TEMPLATE_OUTPUT_FILENAME="k8s_nodeChromium_enableTracing_secureIngress_generateCerts_ingressPublicIP_subPath.yaml" \
@@ -965,7 +965,7 @@ chart_test_autoscaling_deployment_https:
965965

966966
chart_test_autoscaling_deployment:
967967
PLATFORMS=$(PLATFORMS) TEST_EXISTING_KEDA=true RELEASE_NAME=selenium CHART_ENABLE_TRACING=true TEST_PATCHED_KEDA=$(TEST_PATCHED_KEDA) AUTOSCALING_COOLDOWN_PERIOD=30 \
968-
TRACING_EXPORTER_ENDPOINT="http://\$$KUBERNETES_NODE_HOST_IP:4317" \
968+
TRACING_EXPORTER_ENDPOINT="http://\$$KUBERNETES_NODE_HOST_IP:4317" TEST_CUSTOM_SPECIFIC_NAME=true \
969969
SECURE_CONNECTION_SERVER=true SECURE_USE_EXTERNAL_CERT=true SERVICE_TYPE_NODEPORT=true SELENIUM_GRID_PROTOCOL=https SELENIUM_GRID_HOST=$$(hostname -I | cut -d' ' -f1) SELENIUM_GRID_PORT=31444 \
970970
SELENIUM_GRID_AUTOSCALING_MIN_REPLICA=1 SET_MAX_REPLICAS=3 TEST_DELAY_AFTER_TEST=2 SELENIUM_GRID_MONITORING=false \
971971
VERSION=$(TAG_VERSION) VIDEO_TAG=$(FFMPEG_TAG_VERSION)-$(BUILD_DATE) KEDA_BASED_NAME=$(KEDA_BASED_NAME) KEDA_BASED_TAG=$(KEDA_BASED_TAG) NAMESPACE=$(NAMESPACE) BINDING_VERSION=$(BINDING_VERSION) BASE_VERSION=$(BASE_VERSION) \

charts/selenium-grid/CONFIGURATION.md

+5-4
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ A Helm chart for creating a Selenium Grid Server in Kubernetes
5050
| global.seleniumGrid.topologySpreadConstraints | list | `[]` | Specify topologySpreadConstraints for all components, can be overridden individually |
5151
| global.seleniumGrid.nodeMaxSessions | int | `1` | Specify number of max sessions per node. Can be overridden by individual component (this is also set to scaler trigger parameter `nodeMaxSessions` if `autoscaling` is enabled) |
5252
| global.seleniumGrid.nodeEnableManagedDownloads | bool | `false` | This causes the Node to auto manage files downloaded for a given session on the Node (https://www.selenium.dev/documentation/webdriver/drivers/remote_webdriver/#enable-downloads-in-the-grid) |
53+
| global.seleniumGrid.nodeCustomCapabilities | string | `""` | Setting custom capabilities for matching specific Nodes (https://www.selenium.dev/documentation/grid/configuration/toml_options/#setting-custom-capabilities-for-matching-specific-nodes) |
5354
| global.seleniumGrid.nodeRegisterPeriod | int | `120` | How long, in seconds, will the Node try to register to the Distributor for the first time. After this period is completed, the Node will not attempt to register again. |
5455
| global.seleniumGrid.nodeRegisterCycle | int | `5` | How often, in seconds, the Node will try to register itself for the first time to the Distributor. |
5556
| tls.create | bool | `true` | Create a Secret resource for TLS certificate and key. If using an external secret set to false and provide its name in `nameOverride` below |
@@ -458,6 +459,7 @@ A Helm chart for creating a Selenium Grid Server in Kubernetes
458459
| chromeNode.extraVolumes | list | `[]` | Extra volumes for chrome-node pod |
459460
| chromeNode.nodeMaxSessions | string | `nil` | Override the number of max sessions per node |
460461
| chromeNode.nodeEnableManagedDownloads | string | `nil` | Override the managed downloads in node |
462+
| chromeNode.nodeCustomCapabilities | string | `""` | Override the same config at the global level |
461463
| chromeNode.nodeRegisterPeriod | string | `nil` | Override the same config at the global level |
462464
| chromeNode.nodeRegisterCycle | string | `nil` | Override the same config at the global level |
463465
| chromeNode.scaledOptions | string | `nil` | Override the scaled options for chrome nodes |
@@ -467,7 +469,6 @@ A Helm chart for creating a Selenium Grid Server in Kubernetes
467469
| chromeNode.hpa.sessionBrowserName | string | `"chrome"` | sessionBrowserName if the browserName is different from the sessionBrowserName |
468470
| chromeNode.hpa.browserVersion | string | `""` | browserVersion should match with Node stereotype and request capability is scaled by this scaler |
469471
| chromeNode.hpa.platformName | string | `""` | platformName should match with Node stereotype and request capability is scaled by this scaler |
470-
| chromeNode.hpa.capabilities | string | `""` | Setting more custom capabilities for matching specific Nodes |
471472
| chromeNode.hpa.unsafeSsl | string | `"{{ template \"seleniumGrid.graphqlURL.unsafeSsl\" . }}"` | Skip check SSL when connecting to the Graphql endpoint |
472473
| chromeNode.initContainers | list | `[]` | It is used to add initContainers in the same pod of the browser node. It should be set using the --set-json option |
473474
| chromeNode.sidecars | list | `[]` | It is used to add sidecars proxy in the same pod of the browser node. It means it will add a new container to the deployment itself. It should be set using the --set-json option |
@@ -516,6 +517,7 @@ A Helm chart for creating a Selenium Grid Server in Kubernetes
516517
| firefoxNode.extraVolumes | list | `[]` | Extra volumes for firefox-node pod |
517518
| firefoxNode.nodeMaxSessions | string | `nil` | Override the number of max sessions per node |
518519
| firefoxNode.nodeEnableManagedDownloads | string | `nil` | Override the managed downloads in node |
520+
| firefoxNode.nodeCustomCapabilities | string | `""` | Override the same config at the global level |
519521
| firefoxNode.nodeRegisterPeriod | string | `nil` | Override the same config at the global level |
520522
| firefoxNode.nodeRegisterCycle | string | `nil` | Override the same config at the global level |
521523
| firefoxNode.scaledOptions | string | `nil` | Override the scaled options for firefox nodes |
@@ -525,7 +527,6 @@ A Helm chart for creating a Selenium Grid Server in Kubernetes
525527
| firefoxNode.hpa.sessionBrowserName | string | `"firefox"` | sessionBrowserName if the browserName is different from the sessionBrowserName |
526528
| firefoxNode.hpa.browserVersion | string | `""` | browserVersion should match with Node stereotype and request capability is scaled by this scaler |
527529
| firefoxNode.hpa.platformName | string | `""` | platformName should match with Node stereotype and request capability is scaled by this scaler |
528-
| firefoxNode.hpa.capabilities | string | `""` | Setting more custom capabilities for matching specific Nodes |
529530
| firefoxNode.hpa.unsafeSsl | string | `"{{ template \"seleniumGrid.graphqlURL.unsafeSsl\" . }}"` | Skip check SSL when connecting to the Graphql endpoint |
530531
| firefoxNode.initContainers | list | `[]` | It is used to add initContainers in the same pod of the browser node. It should be set using the --set-json option |
531532
| firefoxNode.sidecars | list | `[]` | It is used to add sidecars proxy in the same pod of the browser node. It means it will add a new container to the deployment itself. It should be set using the --set-json option |
@@ -574,6 +575,7 @@ A Helm chart for creating a Selenium Grid Server in Kubernetes
574575
| edgeNode.extraVolumes | list | `[]` | Extra volumes for edge-node pod |
575576
| edgeNode.nodeMaxSessions | string | `nil` | Override the number of max sessions per node |
576577
| edgeNode.nodeEnableManagedDownloads | string | `nil` | Override the managed downloads in node |
578+
| edgeNode.nodeCustomCapabilities | string | `""` | Override the same config at the global level |
577579
| edgeNode.nodeRegisterPeriod | string | `nil` | Override the same config at the global level |
578580
| edgeNode.nodeRegisterCycle | string | `nil` | Override the same config at the global level |
579581
| edgeNode.scaledOptions | string | `nil` | Override the scaled options for edge nodes |
@@ -583,7 +585,6 @@ A Helm chart for creating a Selenium Grid Server in Kubernetes
583585
| edgeNode.hpa.sessionBrowserName | string | `"msedge"` | sessionBrowserName if the browserName is different from the sessionBrowserName |
584586
| edgeNode.hpa.browserVersion | string | `""` | browserVersion should match with Node stereotype and request capability is scaled by this scaler |
585587
| edgeNode.hpa.platformName | string | `""` | platformName should match with Node stereotype and request capability is scaled by this scaler |
586-
| edgeNode.hpa.capabilities | string | `""` | Setting more custom capabilities for matching specific Nodes |
587588
| edgeNode.hpa.unsafeSsl | string | `"{{ template \"seleniumGrid.graphqlURL.unsafeSsl\" . }}"` | Skip check SSL when connecting to the Graphql endpoint |
588589
| edgeNode.initContainers | list | `[]` | It is used to add initContainers in the same pod of the browser node. It should be set using the --set-json option |
589590
| edgeNode.sidecars | list | `[]` | It is used to add sidecars proxy in the same pod of the browser node. It means it will add a new container to the deployment itself. It should be set using the --set-json option |
@@ -632,6 +633,7 @@ A Helm chart for creating a Selenium Grid Server in Kubernetes
632633
| relayNode.extraVolumes | list | `[]` | Extra volumes for relay-node pod |
633634
| relayNode.nodeMaxSessions | string | `nil` | Override the number of max sessions per node |
634635
| relayNode.nodeEnableManagedDownloads | string | `nil` | Override the managed downloads in node |
636+
| relayNode.nodeCustomCapabilities | string | `""` | Override the same config at the global level |
635637
| relayNode.nodeRegisterPeriod | string | `nil` | Override the same config at the global level |
636638
| relayNode.nodeRegisterCycle | string | `nil` | Override the same config at the global level |
637639
| relayNode.scaledOptions | string | `nil` | Override the scaled options for relay nodes |
@@ -641,7 +643,6 @@ A Helm chart for creating a Selenium Grid Server in Kubernetes
641643
| relayNode.hpa.sessionBrowserName | string | `""` | sessionBrowserName if the browserName is different from the sessionBrowserName |
642644
| relayNode.hpa.browserVersion | string | `""` | browserVersion should match with Node stereotype and request capability is scaled by this scaler |
643645
| relayNode.hpa.platformName | string | `"Android"` | platformName should match with Node stereotype and request capability is scaled by this scaler |
644-
| relayNode.hpa.capabilities | string | `""` | Setting more custom capabilities for matching specific Nodes |
645646
| relayNode.hpa.unsafeSsl | string | `"{{ template \"seleniumGrid.graphqlURL.unsafeSsl\" . }}"` | Skip check SSL when connecting to the Graphql endpoint |
646647
| relayNode.initContainers | list | `[]` | It is used to add initContainers in the same pod of the browser node. It should be set using the --set-json option |
647648
| relayNode.sidecars | list | `[]` | It is used to add sidecars proxy in the same pod of the browser node. It means it will add a new container to the deployment itself. It should be set using the --set-json option |

charts/selenium-grid/templates/_helpers.tpl

+7-4
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,7 @@ Common autoscaling spec template
209209
{{- $spec := toYaml (dict) -}}
210210
{{- $nodeMaxSessions := default $.Values.global.seleniumGrid.nodeMaxSessions .node.nodeMaxSessions | int64 -}}
211211
{{- $nodeEnableManagedDownloads := default $.Values.global.seleniumGrid.nodeEnableManagedDownloads .node.nodeEnableManagedDownloads -}}
212+
{{- $nodeCustomCapabilities := default $.Values.global.seleniumGrid.nodeCustomCapabilities .node.nodeCustomCapabilities -}}
212213
{{/* Merge with precedence from right to left */}}
213214
{{- with $.Values.autoscaling.scaledOptions -}}
214215
{{- $spec = mergeOverwrite ($spec | fromYaml) . | toYaml -}}
@@ -249,6 +250,9 @@ triggers:
249250
{{- if not .enableManagedDownloads }}
250251
enableManagedDownloads: {{ $nodeEnableManagedDownloads | quote }}
251252
{{- end }}
253+
{{- if not .capabilities }}
254+
capabilities: {{ $nodeCustomCapabilities | quote }}
255+
{{- end }}
252256
{{- end }}
253257
authenticationRef:
254258
name: {{ template "seleniumGrid.autoscaling.authenticationRef.fullname" $ }}
@@ -289,6 +293,7 @@ Common pod template
289293
{{- $videoImageTag := default $.Values.global.seleniumGrid.videoImageTag .recorder.imageTag -}}
290294
{{- $nodeMaxSessions := default $.Values.global.seleniumGrid.nodeMaxSessions .node.nodeMaxSessions | int64 -}}
291295
{{- $nodeEnableManagedDownloads := default $.Values.global.seleniumGrid.nodeEnableManagedDownloads .node.nodeEnableManagedDownloads -}}
296+
{{- $nodeCustomCapabilities := default $.Values.global.seleniumGrid.nodeCustomCapabilities .node.nodeCustomCapabilities -}}
292297
{{- $nodeRegisterPeriod := default $.Values.global.seleniumGrid.nodeRegisterPeriod .node.nodeRegisterPeriod | int64 -}}
293298
{{- $nodeRegisterCycle := default $.Values.global.seleniumGrid.nodeRegisterCycle .node.nodeRegisterCycle | int64 -}}
294299
template:
@@ -360,6 +365,8 @@ template:
360365
{{- end }}
361366
- name: SE_NODE_ENABLE_MANAGED_DOWNLOADS
362367
value: {{ $nodeEnableManagedDownloads | quote }}
368+
- name: SE_NODE_STEREOTYPE_EXTRA
369+
value: {{ $nodeCustomCapabilities | quote }}
363370
- name: SE_DRAIN_AFTER_SESSION_COUNT
364371
value: {{ and (eq (include "seleniumGrid.useKEDA" $) "true") (eq .Values.autoscaling.scalingType "job") | ternary $nodeMaxSessions 0 | quote }}
365372
{{- if and (eq (include "seleniumGrid.useKEDA" $) "true") }}
@@ -369,10 +376,6 @@ template:
369376
{{- if and (eq (include "seleniumGrid.useKEDA" $) "true") }}
370377
- name: SE_NODE_PLATFORM_NAME
371378
value: {{ if hasKey .node.hpa "platformName" }}{{ .node.hpa.platformName | quote }}{{ else }}""{{ end }}
372-
{{- end }}
373-
{{- if and (eq (include "seleniumGrid.useKEDA" $) "true") }}
374-
- name: SE_NODE_STEREOTYPE_EXTRA
375-
value: {{ if hasKey .node.hpa "capabilities" }}{{ .node.hpa.capabilities | quote }}{{ else }}""{{ end }}
376379
{{- end }}
377380
- name: SE_NODE_CONTAINER_NAME
378381
valueFrom:

charts/selenium-grid/values.yaml

+10-9
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,8 @@ global:
5252
nodeMaxSessions: 1
5353
# -- This causes the Node to auto manage files downloaded for a given session on the Node (https://www.selenium.dev/documentation/webdriver/drivers/remote_webdriver/#enable-downloads-in-the-grid)
5454
nodeEnableManagedDownloads: false
55+
# -- Setting custom capabilities for matching specific Nodes (https://www.selenium.dev/documentation/grid/configuration/toml_options/#setting-custom-capabilities-for-matching-specific-nodes)
56+
nodeCustomCapabilities: ""
5557
# -- How long, in seconds, will the Node try to register to the Distributor for the first time. After this period is completed, the Node will not attempt to register again.
5658
nodeRegisterPeriod: 120
5759
# -- How often, in seconds, the Node will try to register itself for the first time to the Distributor.
@@ -1268,6 +1270,8 @@ chromeNode:
12681270
# -- Override the managed downloads in node
12691271
nodeEnableManagedDownloads:
12701272
# -- Override the same config at the global level
1273+
nodeCustomCapabilities: ""
1274+
# -- Override the same config at the global level
12711275
nodeRegisterPeriod:
12721276
# -- Override the same config at the global level
12731277
nodeRegisterCycle:
@@ -1286,9 +1290,6 @@ chromeNode:
12861290
browserVersion: ""
12871291
# -- platformName should match with Node stereotype and request capability is scaled by this scaler
12881292
platformName: ""
1289-
# -- Setting more custom capabilities for matching specific Nodes
1290-
capabilities: ""
1291-
# browserVersion: '91.0' # Optional. Only required when supporting multiple versions of browser in your Selenium Grid.
12921293
# -- Skip check SSL when connecting to the Graphql endpoint
12931294
unsafeSsl: '{{ template "seleniumGrid.graphqlURL.unsafeSsl" . }}' # Optional
12941295

@@ -1465,6 +1466,8 @@ firefoxNode:
14651466
# -- Override the managed downloads in node
14661467
nodeEnableManagedDownloads:
14671468
# -- Override the same config at the global level
1469+
nodeCustomCapabilities: ""
1470+
# -- Override the same config at the global level
14681471
nodeRegisterPeriod:
14691472
# -- Override the same config at the global level
14701473
nodeRegisterCycle:
@@ -1483,8 +1486,6 @@ firefoxNode:
14831486
browserVersion: ""
14841487
# -- platformName should match with Node stereotype and request capability is scaled by this scaler
14851488
platformName: ""
1486-
# -- Setting more custom capabilities for matching specific Nodes
1487-
capabilities: ""
14881489
# -- Skip check SSL when connecting to the Graphql endpoint
14891490
unsafeSsl: '{{ template "seleniumGrid.graphqlURL.unsafeSsl" . }}' # Optional
14901491

@@ -1661,6 +1662,8 @@ edgeNode:
16611662
# -- Override the managed downloads in node
16621663
nodeEnableManagedDownloads:
16631664
# -- Override the same config at the global level
1665+
nodeCustomCapabilities: ""
1666+
# -- Override the same config at the global level
16641667
nodeRegisterPeriod:
16651668
# -- Override the same config at the global level
16661669
nodeRegisterCycle:
@@ -1679,8 +1682,6 @@ edgeNode:
16791682
browserVersion: ""
16801683
# -- platformName should match with Node stereotype and request capability is scaled by this scaler
16811684
platformName: ""
1682-
# -- Setting more custom capabilities for matching specific Nodes
1683-
capabilities: ""
16841685
# -- Skip check SSL when connecting to the Graphql endpoint
16851686
unsafeSsl: '{{ template "seleniumGrid.graphqlURL.unsafeSsl" . }}' # Optional
16861687

@@ -1857,6 +1858,8 @@ relayNode:
18571858
# -- Override the managed downloads in node
18581859
nodeEnableManagedDownloads:
18591860
# -- Override the same config at the global level
1861+
nodeCustomCapabilities: ""
1862+
# -- Override the same config at the global level
18601863
nodeRegisterPeriod:
18611864
# -- Override the same config at the global level
18621865
nodeRegisterCycle:
@@ -1875,8 +1878,6 @@ relayNode:
18751878
browserVersion: ""
18761879
# -- platformName should match with Node stereotype and request capability is scaled by this scaler
18771880
platformName: "Android"
1878-
# -- Setting more custom capabilities for matching specific Nodes
1879-
capabilities: ""
18801881
# -- Skip check SSL when connecting to the Graphql endpoint
18811882
unsafeSsl: '{{ template "seleniumGrid.graphqlURL.unsafeSsl" . }}' # Optional
18821883

tests/charts/make/chart_test.sh

+8
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ TEST_EXISTING_PTS=${TEST_EXISTING_PTS:-"false"}
6666
TEST_MULTIPLE_VERSIONS=${TEST_MULTIPLE_VERSIONS:-"false"}
6767
TEST_MULTIPLE_VERSIONS_EXPLICIT=${TEST_MULTIPLE_VERSIONS_EXPLICIT:-"true"}
6868
TEST_MULTIPLE_PLATFORMS=${TEST_MULTIPLE_PLATFORMS:-"false"}
69+
TEST_CUSTOM_SPECIFIC_NAME=${TEST_CUSTOM_SPECIFIC_NAME:-"false"}
6970

7071
wait_for_terminated() {
7172
# Wait until no pods are in "Terminating" state
@@ -187,6 +188,12 @@ if [ -n "${TRACING_EXPORTER_ENDPOINT}" ]; then
187188
"
188189
fi
189190

191+
if [ "${TEST_CUSTOM_SPECIFIC_NAME}" = "true" ]; then
192+
HELM_COMMAND_SET_IMAGES="${HELM_COMMAND_SET_IMAGES} \
193+
--set global.seleniumGrid.nodeCustomCapabilities={'myApp:version':'beta','myApp:publish':'public'} \
194+
"
195+
fi
196+
190197
if [ "${SELENIUM_GRID_AUTOSCALING}" = "true" ] && [ "${TEST_EXISTING_KEDA}" = "true" ]; then
191198
HELM_COMMAND_SET_IMAGES="${HELM_COMMAND_SET_IMAGES} \
192199
--set autoscaling.enabled=false \
@@ -497,6 +504,7 @@ export TEST_AUTOSCALING_ITERATIONS=${TEST_AUTOSCALING_ITERATIONS:-"20"}
497504
export TEST_MULTIPLE_VERSIONS=${TEST_MULTIPLE_VERSIONS}
498505
export TEST_MULTIPLE_VERSIONS_EXPLICIT=${TEST_MULTIPLE_VERSIONS_EXPLICIT}
499506
export TEST_MULTIPLE_PLATFORMS=${TEST_MULTIPLE_PLATFORMS}
507+
export TEST_CUSTOM_SPECIFIC_NAME=${TEST_CUSTOM_SPECIFIC_NAME}
500508
if [ "${MATRIX_BROWSER}" = "NoAutoscaling" ]; then
501509
./tests/bootstrap.sh NodeFirefox
502510
if [ "${TEST_PLATFORMS}" = "linux/amd64" ]; then

tests/charts/templates/render/dummy.yaml

+2
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ global:
1818
topologyKey: kubernetes.io/hostname
1919
whenUnsatisfiable: DoNotSchedule
2020
nodeMaxSessions: 3
21+
nodeEnableManagedDownloads: true
22+
nodeCustomCapabilities: "{'myApp:version':'beta','myApp:publish':'public'}"
2123

2224
monitoring:
2325
enabledWithExistingAgent: true

tests/charts/templates/render/dummy_solution.yaml

+2
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ global:
1818
topologyKey: kubernetes.io/hostname
1919
whenUnsatisfiable: DoNotSchedule
2020
nodeMaxSessions: 3
21+
nodeEnableManagedDownloads: true
22+
nodeCustomCapabilities: "{'myApp:version':'beta','myApp:publish':'public'}"
2123

2224
selenium-grid:
2325
autoscaling:

0 commit comments

Comments
 (0)