Skip to content

Commit

Permalink
feat: Adding port to nodes service (SeleniumHQ#1996)
Browse files Browse the repository at this point in the history
* Bumping chart version

Signed-off-by: Viet Nguyen Duc <[email protected]>

* SeleniumHQ#1995 feat: Adding port to nodes service

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Update chart CHANGELOG

Signed-off-by: Viet Nguyen Duc <[email protected]>

---------

Signed-off-by: Viet Nguyen Duc <[email protected]>
  • Loading branch information
VietND96 authored Nov 8, 2023
1 parent 87c0cf6 commit fe17f6d
Show file tree
Hide file tree
Showing 7 changed files with 96 additions and 5 deletions.
19 changes: 18 additions & 1 deletion charts/selenium-grid/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,23 @@

All notable changes to this helm chart will be documented in this file.

## :heavy_check_mark: 0.24.0

### Added

- Update tag in docs and files [skip ci] :: Selenium CI Bot
- Bumping chart version :: Diego Molina
- Fix minor issues after PR #1881 and #1981 (#1983) :: Viet Nguyen Duc
- Improve default value for videoRecorder in chart (#1984) :: Viet Nguyen Duc
- Improve chart templates in the section videoRecorder (#1987) :: Viet Nguyen Duc
- Update to Selenium 4.15.0 (#1990) :: Luis Correia
- feat(autoscaling): Unified parameters to set scaled options for browser nodes (#1989) :: Viet Nguyen Duc
- Add chart parameter ingress.paths to configure custom paths (#1994) :: Viet Nguyen Duc
- feat: Adding port to nodes service (#1196) :: Viet Nguyen Duc

### Changed
- Update image tag to 4.15.0-20231102

## :heavy_check_mark: 0.23.0

### Added
Expand All @@ -11,7 +28,7 @@ All notable changes to this helm chart will be documented in this file.
- Update Video/Dockerfile with based image ffmpeg:6.0-alpine (#1981) :: Viet Nguyen Duc

### Changed
- Update image tag to 4.15.0-20231102
- Update image tag to 4.14.1-20231025

## :heavy_check_mark: 0.22.0

Expand Down
4 changes: 2 additions & 2 deletions charts/selenium-grid/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ apiVersion: v2
name: selenium-grid
description: A Helm chart for creating a Selenium Grid Server in Kubernetes
type: application
version: 0.23.0
appVersion: 4.14.1-20231025
version: 0.24.0
appVersion: 4.15.0-20231102
icon: https://github.com/SeleniumHQ/docker-selenium/raw/trunk/logo.png
dependencies:
- repository: https://kedacore.github.io/charts
Expand Down
6 changes: 6 additions & 0 deletions charts/selenium-grid/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,8 @@ This table contains the configuration parameters of the chart and their default
| `chromeNode.extraEnvFrom` | `nil` | Custom environment taken from `configMap` or `secret` variables for chrome nodes |
| `chromeNode.service.enabled` | `true` | Create a service for node |
| `chromeNode.service.type` | `ClusterIP` | Service type |
| `chromeNode.service.loadBalancerIP` | `` | Set specific loadBalancerIP when serviceType is LoadBalancer |
| `chromeNode.service.ports` | `[]` | Extra ports exposed in node service |
| `chromeNode.service.annotations` | `{}` | Custom annotations for service |
| `chromeNode.dshmVolumeSizeLimit` | `1Gi` | Size limit for DSH volume mounted in container (if not set, default is "1Gi") |
| `chromeNode.startupProbe` | `{}` | Probe to check pod is started successfully |
Expand Down Expand Up @@ -184,6 +186,8 @@ This table contains the configuration parameters of the chart and their default
| `firefoxNode.extraEnvFrom` | `nil` | Custom environment variables taken from `configMap` or `secret` for firefox nodes |
| `firefoxNode.service.enabled` | `true` | Create a service for node |
| `firefoxNode.service.type` | `ClusterIP` | Service type |
| `firefoxNode.service.loadBalancerIP` | `` | Set specific loadBalancerIP when serviceType is LoadBalancer |
| `firefoxNode.service.ports` | `[]` | Extra ports exposed in node service |
| `firefoxNode.service.annotations` | `{}` | Custom annotations for service |
| `firefoxNode.dshmVolumeSizeLimit` | `1Gi` | Size limit for DSH volume mounted in container (if not set, default is "1Gi") |
| `firefoxNode.startupProbe` | `{}` | Probe to check pod is started successfully |
Expand Down Expand Up @@ -221,6 +225,8 @@ This table contains the configuration parameters of the chart and their default
| `edgeNode.extraEnvFrom` | `nil` | Custom environment taken from `configMap` or `secret` variables for firefox nodes |
| `edgeNode.service.enabled` | `true` | Create a service for node |
| `edgeNode.service.type` | `ClusterIP` | Service type |
| `edgeNode.service.loadBalancerIP` | `` | Set specific loadBalancerIP when serviceType is LoadBalancer |
| `edgeNode.service.ports` | `[]` | Extra ports exposed in node service |
| `edgeNode.service.annotations` | `{}` | Custom annotations for service |
| `edgeNode.dshmVolumeSizeLimit` | `1Gi` | Size limit for DSH volume mounted in container (if not set, default is "1Gi") |
| `edgeNode.startupProbe` | `{}` | Probe to check pod is started successfully |
Expand Down
16 changes: 16 additions & 0 deletions charts/selenium-grid/templates/chrome-node-service.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,25 @@ spec:
selector:
app: selenium-chrome-node
app.kubernetes.io/instance: {{ .Release.Name }}
{{- if and (eq .Values.chromeNode.service.type "LoadBalancer") (.Values.chromeNode.service.loadBalancerIP) }}
loadBalancerIP: {{ .Values.chromeNode.service.loadBalancerIP }}
{{- end }}
ports:
- name: tcp-chrome
protocol: TCP
port: {{ .Values.chromeNode.seleniumServicePort }}
targetPort: {{ .Values.chromeNode.seleniumPort }}
{{- with .Values.chromeNode.service.ports }}
{{- range . }}
- name: {{ .name }}
port: {{ .port }}
targetPort: {{ .targetPort }}
{{- if .protocol }}
protocol: {{ .protocol }}
{{- end }}
{{- if and (eq $.Values.chromeNode.service.type "NodePort") .nodePort }}
nodePort: {{ .nodePort }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}
16 changes: 16 additions & 0 deletions charts/selenium-grid/templates/edge-node-service.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,25 @@ spec:
selector:
app: selenium-edge-node
app.kubernetes.io/instance: {{ .Release.Name }}
{{- if and (eq .Values.edgeNode.service.type "LoadBalancer") (.Values.edgeNode.service.loadBalancerIP) }}
loadBalancerIP: {{ .Values.edgeNode.service.loadBalancerIP }}
{{- end }}
ports:
- name: tcp-edge
protocol: TCP
port: {{ .Values.edgeNode.seleniumServicePort }}
targetPort: {{ .Values.edgeNode.seleniumPort }}
{{- with .Values.edgeNode.service.ports }}
{{- range . }}
- name: {{ .name }}
port: {{ .port }}
targetPort: {{ .targetPort }}
{{- if .protocol }}
protocol: {{ .protocol }}
{{- end }}
{{- if and (eq $.Values.edgeNode.service.type "NodePort") .nodePort }}
nodePort: {{ .nodePort }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}
16 changes: 16 additions & 0 deletions charts/selenium-grid/templates/firefox-node-service.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,25 @@ spec:
selector:
app: selenium-firefox-node
app.kubernetes.io/instance: {{ .Release.Name }}
{{- if and (eq .Values.firefoxNode.service.type "LoadBalancer") (.Values.firefoxNode.service.loadBalancerIP) }}
loadBalancerIP: {{ .Values.firefoxNode.service.loadBalancerIP }}
{{- end }}
ports:
- name: tcp-firefox
protocol: TCP
port: {{ .Values.firefoxNode.seleniumServicePort }}
targetPort: {{ .Values.firefoxNode.seleniumPort }}
{{- with .Values.firefoxNode.service.ports }}
{{- range . }}
- name: {{ .name }}
port: {{ .port }}
targetPort: {{ .targetPort }}
{{- if .protocol }}
protocol: {{ .protocol }}
{{- end }}
{{- if and (eq $.Values.firefoxNode.service.type "NodePort") .nodePort }}
nodePort: {{ .nodePort }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}
24 changes: 22 additions & 2 deletions charts/selenium-grid/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -464,6 +464,13 @@ chromeNode:
enabled: true
# Service type
type: ClusterIP
# Set specific loadBalancerIP when serviceType is LoadBalancer (see https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
loadBalancerIP: ""
# Extra ports exposed in node service
ports:
# - name: node-port
# port: 5555
# targetPort: 5555
# Custom annotations for service
annotations: {}
# Size limit for DSH volume mounted in container (if not set, default is "1Gi")
Expand Down Expand Up @@ -589,6 +596,13 @@ firefoxNode:
enabled: true
# Service type
type: ClusterIP
# Set specific loadBalancerIP when serviceType is LoadBalancer (see https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
loadBalancerIP: ""
# Extra ports exposed in node service
ports:
# - name: node-port
# port: 5555
# targetPort: 5555
# Custom annotations for service
annotations: {}
# Size limit for DSH volume mounted in container (if not set, default is "1Gi")
Expand Down Expand Up @@ -710,9 +724,15 @@ edgeNode:
enabled: true
# Service type
type: ClusterIP
# Set specific loadBalancerIP when serviceType is LoadBalancer (see https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer)
loadBalancerIP: ""
# Extra ports exposed in node service
ports:
# - name: node-port
# port: 5555
# targetPort: 5555
# Custom annotations for service
annotations:
hello: world
annotations: {}
# Size limit for DSH volume mounted in container (if not set, default is "1Gi")
dshmVolumeSizeLimit: 1Gi
# Priority class name for edge-node pods
Expand Down

0 comments on commit fe17f6d

Please sign in to comment.