Back to Charts

⚠️ Repo Archive Notice

stable/selenium/README.md

latest17.3 KB
Original Source

⚠️ Repo Archive Notice

As of Nov 13, 2020, charts in this repo will no longer be updated. For more information, see the Helm Charts Deprecation and Archive Notice, and Update.

Selenium

DEPRECATION NOTICE

This chart is deprecated and no longer supported.

TL;DR;

console
$ helm install stable/selenium

Introduction

This chart bootstraps a Selenium deployment on a Kubernetes cluster using the Helm package manager.

Prerequisites

  • Kubernetes 1.5+ with Beta APIs enabled

Installing the Chart

To install the chart with the release name my-release:

console
$ helm install --name my-release stable/selenium

The command deploys Selenium on the Kubernetes cluster in the default configuration. The configuration section lists the parameters that can be configured during installation.

Tip: List all releases using helm list

Uninstalling the Chart

To uninstall/delete the my-release deployment:

console
$ helm delete my-release

The command removes all the Kubernetes components associated with the chart and deletes the release.

Configuration

The following table lists the configurable parameters of the Selenium chart and their default values.

ParameterDescriptionDefault
global.nodeSelectorNode label to be useed globally for scheduling of all imagesnil
global.hostAliasesA list of hostAliases, that contains ip and hostnames, to be used globally[]
global.affinityDeployemnt affinities to be used globally for scheduling of all imagesnil
global.tolerationsDeployment tolerations to be used globally for scheduling of all imagesnil
global.imagePullSecretsThe secret to use for pulling the images for all deploymentsnil
hub.imageThe selenium hub imageselenium/hub
hub.tagThe selenium hub image tag3.141.59
hub.imagePullSecretsThe secret to use for pulling the image. Will override the global parameter if setnil
hub.pullPolicyThe pull policy for the hub imageIfNotPresent
hub.portThe port the hub listens on4444
hub.servicePortThe port the hub Service listens on4444
hub.nodePortThe port the hub is exposed when Nodeport mode is selectednil
hub.podAnnotationsAnnotations on the hub pod{}
hub.podLabelsAdditionals labels to the hub pod{}
hub.securityContextSecurityContext on the hub pod{"runAsUser": 1000, "fsGroup": 1000}
hub.extraEnvsAny additional environment variables to set in the pods[]
hub.javaOptsThe java options for the selenium hub JVM, default sets the maximum heap size to 400 mb-Xmx400m
hub.resourcesThe resources for the hub container, defaults to minimum half a cpu and maximum 512 mb RAM{"limits":{"cpu":".5", "memory":"512Mi"}}
hub.serviceTypeThe Service typeLoadBalancer
hub.serviceLoadBalancerIPThe Public IP for the Load Balancernil
hub.loadBalancerSourceRangesA list of IP CIDRs allowed access to load balancer (if supported)[]
hub.serviceSessionAffinityThe session affinity for the hub serviceNone
hub.gridNewSessionWaitTimeoutnil
hub.gridJettyMaxThreadsnil
hub.gridNodePollingnil
hub.gridCleanUpCycleSpecifies how often the hub will poll running proxies for timed-out (i.e. hung) threads (in ms). Must also specify "timeout" optionnil
hub.gridTimeoutSpecifies the timeout before the server automatically kills a session that hasn't had any activity in the last X seconds.nil
hub.gridBrowserTimeoutNumber of seconds a browser session is allowed to hang while a WebDriver command is runningnil
hub.gridMaxSessionnil
hub.gridUnregisterIfStillDownAfternil
hub.seOptsCommand line arguments to pass to hubnil
hub.timeZoneThe time zone for the containernil
hub.nodeSelectorNode label to use for scheduling of the hub if set this takes precedence over the global valuenil
hub.affinityDeployemnt affinities to use for scheduling of the hub if set this takes precedence over the global valuenil
hub.tolerationsDeployment tolerations to use for scheduling of the hub if set this takes precedence over the global valuenil
hub.ingress.enabledConfigure an ingress for the selenium hubfalse
hub.ingress.annotationsAnnotations for the ingress for the selenium hubnil
hub.ingress.pathThe path for this ingress from which to route the traffic to the selenium hub/
hub.ingress.hostsThe list hosts for which this ingress should resolve the selenium hub[selenium-hub.local]
hub.ingress.tlsThe tls secret to configure ssl for this ingress[]
hub.readinessTimeoutTimeout for hub readiness probe in seconds1
hub.livenessTimeoutTimeout for hub liveness probe in seconds1
hub.probePathPath for readiness and liveness probes to check/wd/hub/status
chrome.enabledSchedule a chrome node podfalse
chrome.runAsDaemonSetSchedule chrome node pods as DaemonSetfalse
chrome.imageThe selenium node chrome imageselenium/node-chrome
chrome.tagThe selenium node chrome tag3.141.59
chrome.imagePullSecretsThe secret to use for pulling the image. Will override the global parameter if setnil
chrome.pullPolicyThe pull policy for the node chrome imageIfNotPresent
chrome.replicasThe number of selenium node chrome pods. This is ignored if runAsDaemonSet is enabled.1
chrome.enableLivenessProbeWhen true will add a liveness check to the podfalse
chrome.waitForRunningSessionsWhen true will wait for current running sessions to finish before terminating the podfalse
chrome.podAnnotationsAnnotations on the chrome pods{}
chrome.podLabelsAdditional labels on the chrome pods{}
chrome.securityContextSecurityContext on the chrome pods{"runAsUser": 1000, "fsGroup": 1000}
chrome.extraEnvsAny additional environment variables to set in the pods[]
chrome.javaOptsThe java options for the selenium node chrome JVM, default sets the maximum heap size to 900 mb-Xmx900m
chrome.volumeMountsAdditional volumes to mount, the default provides a larger shared memory[{"mountPath":"/dev/shm", "name":"dshm"}]
chrome.volumesAdditional volumes import, the default provides a larger shared memory[{"name":"dshm", "emptyDir":{"medium":"Memory"}}]
chrome.resourcesThe resources for the node chrome container, defaults to minimum half a cpu and maximum 1,000 mb{"limits":{"cpu":".5", "memory":"1000Mi"}}
chrome.screenWidthnil
chrome.screenHeightnil
chrome.screenDepthnil
chrome.displayThe vnc displaynil
chrome.chromeVersionThe version of chrome to usenil
chrome.nodeMaxInstancesThe maximum number of browser instancesnil
chrome.nodeMaxSessionThe maximum number of sessionsnil
chrome.nodeRegistryCycleThe number of milliseconds to wait, registering a nodenil
chrome.nodePortThe port to listen onnil
chrome.seOptsCommand line arguments to pass to nodenil
chrome.timeZoneThe time zone for the containernil
chrome.nodeSelectorNode label to use for scheduling of chrome images if set this takes precedence over the global valuenil
chrome.affinityDeployemnt affinities to use for scheduling of the chrome if set this takes precedence over the global valuenil
chrome.tolerationsDeployment tolerations to use for scheduling of the chrome if set this takes precedence over the global valuenil
chromeDebug.enabledSchedule a selenium node chrome debug podfalse
chromeDebug.runAsDaemonSetSchedule selenium node chrome debug pods as DaemonSetfalse
chromeDebug.imageThe selenium node chrome debug imageselenium/node-chrome-debug
chromeDebug.tagThe selenium node chrome debug tag3.141.59
chromeDebug.imagePullSecretsThe secret to use for pulling the image. Will override the global parameter if setnil
chromeDebug.pullPolicyThe selenium node chrome debug pull policyIfNotPresent
chromeDebug.replicasThe number of selenium node chrome debug pods. This is ignored if runAsDaemonSet is enabled.1
chromeDebug.enableLivenessProbeWhen true will add a liveness check to the podfalse
chromeDebug.waitForRunningSessionsWhen true will wait for current running sessions to finish before terminating the podfalse
chromeDebug.podAnnotationsAnnotations on the Chrome debug pod{}
chromeDebug.podLabelsAdditional labels on the Chrome debug pods{}
chromeDebug.securityContextSecurityContext on the Chrome debug pods{"runAsUser": 1000, "fsGroup": 1000}
chromeDebug.extraEnvsAny additional environment variables to set in the pods[]
chromeDebug.javaOptsThe java options for a selenium node chrome debug JVM, default sets the max heap size to 900 mb-Xmx900m
chromeDebug.volumeMountsAdditional volumes to mount, the default provides a larger shared[{"mountPath":"/dev/shm", "name":"dshm"}]
chromeDebug.volumesAdditional volumes import, the default provides a larger shared[{"name":"dshm", "emptyDir":{"medium":"Memory"}}]
chromeDebug.resourcesThe resources for the hub container, defaults to minimum half a cpu and maximum 1,000 mb{"limits":{"cpu":".5", "memory":"1000Mi"}}
chromeDebug.screenWidthnil
chromeDebug.screenHeightnil
chromeDebug.screenDepthnil
chromeDebug.displayThe vnc displaynil
chromeDebug.chromeVersionThe version of chrome to usenil
chromeDebug.nodeMaxInstancesThe maximum number of browser instancesnil
chromeDebug.nodeMaxSessionThe maximum number of sessionsnil
chromeDebug.nodeRegistryCycleThe number of milliseconds to wait, registering a nodenil
chromeDebug.nodePortThe port to listen onnil
chromeDebug.seOptsCommand line arguments to pass to nodenil
chromeDebug.timeZoneThe time zone for the containernil
chromeDebug.nodeSelectorNode label to use for scheduling of chromeDebug images if set this takes precedence over the global valuenil
chromeDebug.affinityDeployemnt affinities to use for scheduling of the chromeDebug if set this takes precedence over the global valuenil
chromeDebug.tolerationsDeployment tolerations to use for scheduling of the chromeDebug if set this takes precedence over the global valuenil
firefox.enabledSchedule a selenium node firefox podfalse
firefox.runAsDaemonSetSchedule selenium node firefox pods as DaemonSetfalse
firefox.imageThe selenium node firefox imageselenium/node-firefox
firefox.tagThe selenium node firefox tag3.141.59
firefox.imagePullSecretsThe secret to use for pulling the image. Will override the global parameter if setnil
firefox.pullPolicyThe selenium node firefox pull policyIfNotPresent
firefox.replicasThe number of selenium node firefox pods. This is ignored if runAsDaemonSet is enabled.1
firefox.enableLivenessProbeWhen true will add a liveness check to the podfalse
firefox.waitForRunningSessionsWhen true will wait for current running sessions to finish before terminating the podfalse
firefox.podAnnotationsAnnotations on the firefox pods{}
firefox.podLabelsAdditional labels on the firefox pods{}
firefox.securityContextSecurityContext on the firefox pods{"runAsUser": 1000, "fsGroup": 1000}
firefox.extraEnvsAny additional environment variables to set in the pods[]
firefox.javaOptsThe java options for a selenium node firefox JVM, default sets the max heap size to 900 mb-Xmx900m
firefox.volumeMountsAdditional volumes to mount, the default provides a larger shared memory[{"mountPath":"/dev/shm", "name":"dshm"}]
firefox.volumesAdditional volumes import, the default provides a larger shared memory[{"name":"dshm", "emptyDir":{"medium":"Memory"}}]
firefox.resourcesThe resources for the hub container, defaults to minimum half a cpu and maximum 1,000 mb{"limits":{"cpu":".5", "memory":"1000Mi"}}
firefox.screenWidthnil
firefox.screenHeightnil
firefox.screenDepthnil
firefox.displayThe vnc displaynil
firefox.firefoxVersionThe version of firefox to usenil
firefox.nodeMaxInstancesThe maximum number of browser instancesnil
firefox.nodeMaxSessionThe maximum number of sessionsnil
firefox.nodeRegistryCycleThe number of milliseconds to wait, registering a nodenil
firefox.nodePortThe port to listen onnil
firefox.seOptsCommand line arguments to pass to nodenil
firefox.timeZoneThe time zone for the containernil
firefox.nodeSelectorNode label to use for scheduling of firefox images if set this takes precedence over the global valuenil
firefox.affinityDeployemnt affinities to use for scheduling of the firefox if set this takes precedence over the global valuenil
firefox.tolerationsDeployment tolerations to use for scheduling of the firefox if set this takes precedence over the global valuenil
firefoxDebug.enabledSchedule a selenium node firefox debug podfalse
firefoxDebug.runAsDaemonSetSchedule selenium node firefox debug pods as DaemonSetfalse
firefoxDebug.imageThe selenium node firefox debug imageselenium/node-firefox-debug
firefoxDebug.tagThe selenium node firefox debug tag3.141.59
firefoxDebug.imagePullSecretsThe secret to use for pulling the image. Will override the global parameter if setnil
firefoxDebug.pullPolicyThe selenium node firefox debug pull policyIfNotPresent
firefoxDebug.replicasThe number of selenium node firefox debug pods. This is ignored if runAsDaemonSet is enabled.1
firefoxDebug.enableLivenessProbeWhen true will add a liveness check to the podfalse
firefoxDebug.waitForRunningSessionsWhen true will wait for current running sessions to finish before terminating the podfalse
firefoxDebug.podAnnotationsAnnotations on the firefox debug pods{}
firefoxDebug.podLabelsAdditional labels on the firefox debug pods{}
firefoxDebug.securityContextSecurityContext on the firefox debug pods{"runAsUser": 1000, "fsGroup": 1000}
firefoxDebug.extraEnvsAny additional environment variables to set in the pods[]
firefoxDebug.javaOptsThe java options for a selenium node firefox debug JVM, default sets the max heap size to 900 mb-Xmx900m
firefoxDebug.volumeMountsAdditional volumes to mount, the default provides a larger shared[{"mountPath":"/dev/shm", "name":"dshm"}]
firefoxDebug.volumesAdditional volumes import, the default provides a larger shared[{"name":"dshm", "emptyDir":{"medium":"Memory"}}]
firefoxDebug.resourcesThe resources for the selenium node firefox debug container, defaults to minimum half a cpu and maximum 1,000 mb{"limits":{"cpu":".5", "memory":"1000Mi"}}
firefoxDebug.screenWidthnil
firefoxDebug.screenHeightnil
firefoxDebug.screenDepthnil
firefoxDebug.displayThe vnc displaynil
firefoxDebug.firefoxVersionThe version of firefox to usenil
firefoxDebug.nodeMaxInstancesThe maximum number of browser instancesnil
firefoxDebug.nodeMaxSessionThe maximum number of sessionsnil
firefoxDebug.nodeRegistryCycleThe number of milliseconds to wait, registering a nodenil
firefoxDebug.nodePortThe port to listen onnil
firefoxDebug.seOptsCommand line arguments to pass to nodenil
firefoxDebug.timeZoneThe time zone for the containernil
firefoxDebug.nodeSelectorNode label to use for scheduling of firefoxDebug images if set this takes precedence over the global valuenil
firefoxDebug.affinityDeployemnt affinities to use for scheduling of the firefoxDebug if set this takes precedence over the global valuenil
firefoxDebug.tolerationsDeployment tolerations to use for scheduling of the firefoxDebug if set this takes precedence over the global valuenil

Specify each parameter using the --set key=value[,key=value] argument to helm install. For example,

console
$ helm install --name my-release \
  --set chrome.enabled=true \
    stable/selenium

Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,

console
$ helm install --name my-release -f values.yaml stable/selenium

Tip: You can use the default values.yaml