Add support for private gateway (#154)

This change adds support for TCPRoutes when using a private gateway
class. This is similar to annotating services today. It also moves the
gateway classes to the Helm chart as it makes things a lot simpler for
the end user as they no longer have to define them.

Signed-off-by: Philip Laine <philip.laine@gmail.com>
This commit is contained in:
Philip Laine
2026-03-23 09:59:48 +01:00
committed by GitHub
parent 2aa814f031
commit 8adc8855e5
13 changed files with 340 additions and 76 deletions
@@ -0,0 +1,19 @@
{{- if .Values.gatewayAPI.enabled }}
apiVersion: gateway.networking.k8s.io/v1
kind: GatewayClass
metadata:
name: netbird-private
labels:
{{- include "kubernetes-operator.labels" . | nindent 4 }}
spec:
controllerName: "gateway.netbird.io/controller"
---
apiVersion: gateway.networking.k8s.io/v1
kind: GatewayClass
metadata:
name: netbird-public
labels:
{{- include "kubernetes-operator.labels" . | nindent 4 }}
spec:
controllerName: "gateway.netbird.io/controller"
{{- end }}
@@ -130,6 +130,7 @@ rules:
- gatewayclasses
- gateways
- httproutes
- tcproutes
verbs:
- get
- list
@@ -141,6 +142,7 @@ rules:
- gatewayclasses/status
- gateways/status
- httproutes/status
- tcproutes/status
verbs:
- update
- patch