{{- if and .Values.gateway.enabled .Values.gateway.createGateway }} {{- $fullName := include "perses.fullname" . -}} {{- $gatewayName := default (printf "%s-gateway" $fullName) .Values.gateway.name -}} apiVersion: gateway.networking.k8s.io/v1 kind: Gateway metadata: name: {{ $gatewayName }} {{- if .Values.gateway.namespace }} namespace: {{ .Values.gateway.namespace }} {{- end }} labels: {{- include "perses.labels" . | nindent 4 }} app.kubernetes.io/component: networking {{- with .Values.gateway.labels }} {{- toYaml . | nindent 4 }} {{- end }} {{- with .Values.gateway.annotations }} annotations: {{- toYaml . | nindent 4 }} {{- end }} spec: gatewayClassName: {{ required "gateway.gatewayClassName is required when creating a Gateway" .Values.gateway.gatewayClassName }} {{- if .Values.gateway.listeners }} listeners: {{- range .Values.gateway.listeners }} - name: {{ .name }} port: {{ .port }} protocol: {{ .protocol }} {{- if .hostname }} hostname: {{ .hostname | quote }} {{- end }} {{- if .tls }} tls: {{- toYaml .tls | nindent 8 }} {{- end }} {{- if .allowedRoutes }} allowedRoutes: {{- toYaml .allowedRoutes | nindent 8 }} {{- end }} {{- end }} {{- end }} {{- end }}