helm-charts/headscale/templates/service.yaml

53 lines
No EOL
1.5 KiB
YAML

apiVersion: v1
kind: Service
metadata:
name: {{ include "headscale.fullname" . }}
labels:
{{- include "headscale.labels" . | nindent 4 }}
annotations:
{{- if (.Capabilities.APIVersions.Has "traefik.io/v1alpha1/ServersTransport") }}
"traefik.ingress.kubernetes.io/service.serversscheme": "https"
"traefik.ingress.kubernetes.io/service.serverstransport": {{ printf "%s-%s@kubernetescrd" .Release.Namespace (include "headscale.fullname" .) | quote }}
{{- end }}
{{- with .Values.service.annotations }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
type: {{ .Values.service.type }}
ports:
- port: {{ .Values.service.port.http }}
targetPort: http
protocol: TCP
name: http
- port: {{ .Values.service.port.metrics }}
targetPort: metrics
protocol: TCP
name: metrics
- port: {{ .Values.service.port.grpc }}
targetPort: grpc
protocol: TCP
name: grpc
selector:
{{- include "headscale.selectorLabels" . | nindent 4 }}
{{- if .Values.headscale.config.derp.server.enabled }}
---
apiVersion: v1
kind: Service
metadata:
name: {{ include "headscale.fullname" . }}-derp
labels:
{{- include "headscale.labels" . | nindent 4 }}
{{- with .Values.service.derp.annotations }}
annotations:
{{- toYaml . | nindent 4}}
{{- end }}
spec:
type: {{ .Values.service.derp.type }}
ports:
- port: {{ .Values.service.derp.port }}
targetPort: derp
protocol: UDP
name: derp
selector:
{{- include "headscale.selectorLabels" . | nindent 4 }}
{{- end }}