From dda42e191b47535ea5f94db4bcd4fdbd2b3897bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20G=C3=B6hler?= Date: Tue, 2 Dec 2025 14:55:23 +0100 Subject: [PATCH] Add option to inject network policies into chart --- charts/selenium-grid/README.md | 8 ++++++++ charts/selenium-grid/templates/networkpolicy.yaml | 10 ++++++++++ charts/selenium-grid/values.yaml | 12 ++++++++++++ 3 files changed, 30 insertions(+) create mode 100644 charts/selenium-grid/templates/networkpolicy.yaml diff --git a/charts/selenium-grid/README.md b/charts/selenium-grid/README.md index 0b03329b7..c8cef0c45 100644 --- a/charts/selenium-grid/README.md +++ b/charts/selenium-grid/README.md @@ -409,6 +409,14 @@ helm upgrade selenium-grid docker-selenium/selenium-grid --set 'firefoxNode.enab Note: the parameter used for --set-json is just an example, please refer to [Container Spec](https://www.devspace.sh/component-chart/docs/configuration/containers) for an overview of usable parameters. +If needed, you can add network policies for your selenium-grid by running: + +```bash +helm upgrade selenium-grid docker-selenium/selenium-grid --set 'firefoxNode.enabled=true' --set-json 'networkPolicies={"allow-selenium":{"podSelector":{"matchLabels":{"app.kubernetes.io/name":"selenium-node-firefox"}},"policyTypes":["Egress"],"egress":[{}]}}' +``` + +Note: the parameter used for --set-json is just an example, please refer to [Network Policy Spec](https://kubernetes.io/docs/concepts/services-networking/network-policies/) for an overview of usable parameters. + ## Uninstalling Selenium Grid release To uninstall: diff --git a/charts/selenium-grid/templates/networkpolicy.yaml b/charts/selenium-grid/templates/networkpolicy.yaml new file mode 100644 index 000000000..197d471cb --- /dev/null +++ b/charts/selenium-grid/templates/networkpolicy.yaml @@ -0,0 +1,10 @@ +{{- range $name, $spec := .Values.networkPolicies }} +apiVersion: networking.k8s.io/v1 +kind: NetworkPolicy +metadata: + name: {{ $name }} + namespace: {{ $.Release.Namespace }} +spec: +{{ toYaml $spec | indent 2 }} +--- +{{- end }} diff --git a/charts/selenium-grid/values.yaml b/charts/selenium-grid/values.yaml index 8d43f7c75..131ba0598 100644 --- a/charts/selenium-grid/values.yaml +++ b/charts/selenium-grid/values.yaml @@ -2185,6 +2185,18 @@ videoManager: # persistentVolumeClaim: # claimName: video-pv-claim +# -- Add network policies to this chart +# It can be set using the --set-json option +networkPolicies: {} +# allow-selenium: +# podSelector: +# matchLabels: +# app.kubernetes.io/name: selenium-node-firefox +# policyTypes: +# - Egress +# egress: +# - {} + # Configuration for dependency chart keda keda: # enabled: false