maabara/manifests/pihole/templates/service-web.yaml

109 lines
3.4 KiB
YAML
Raw Normal View History

2024-11-18 18:22:12 +00:00
{{- if or .Values.serviceWeb.http.enabled .Values.serviceWeb.https.enabled -}}
apiVersion: v1
kind: Service
metadata:
name: {{ template "pihole.fullname" . }}-web
labels:
app: {{ template "pihole.name" . }}
app.kubernetes.io/name: {{ template "pihole.name" . }}
2024-11-18 18:22:12 +00:00
chart: {{ template "pihole.chart" . }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
{{- if .Values.serviceWeb.extraLabels }}
{{ toYaml .Values.serviceWeb.extraLabels | indent 4 }}
{{- end }}
{{- if .Values.serviceWeb.annotations }}
annotations:
{{ toYaml .Values.serviceWeb.annotations | indent 4 }}
{{- end }}
spec:
type: {{ .Values.serviceWeb.type }}
{{- if and (.Values.dualStack.enabled) (not (eq .Values.serviceWeb.type "LoadBalancer")) }}
ipFamilies:
- IPv4
- IPv6
ipFamilyPolicy: PreferDualStack
{{- end }}
{{- if .Values.serviceWeb.loadBalancerIP }}
loadBalancerIP: {{ .Values.serviceWeb.loadBalancerIP }}
{{- end }}
{{- if or (eq .Values.serviceWeb.type "NodePort") (eq .Values.serviceWeb.type "LoadBalancer") }}
externalTrafficPolicy: {{ .Values.serviceWeb.externalTrafficPolicy }}
{{- end }}
ports:
{{- if .Values.serviceWeb.http.enabled }}
- port: {{ .Values.serviceWeb.http.port }}
targetPort: http
{{- if and (.Values.serviceWeb.http.nodePort) (eq .Values.serviceWeb.type "NodePort") }}
nodePort: {{ .Values.serviceWeb.http.nodePort }}
{{- end }}
protocol: TCP
name: http
{{- end }}
{{- if .Values.serviceWeb.https.enabled }}
- port: {{ .Values.serviceWeb.https.port }}
targetPort: https
{{- if and (.Values.serviceWeb.https.nodePort) (eq .Values.serviceWeb.type "NodePort") }}
nodePort: {{ .Values.serviceWeb.https.nodePort }}
{{- end }}
protocol: TCP
name: https
{{- end }}
{{- if .Values.doh.enabled }}
- port: 49312
protocol: TCP
name: cloudflared-met
{{- end }}
selector:
app: {{ template "pihole.name" . }}
release: {{ .Release.Name }}
---
{{- if and (.Values.dualStack.enabled) (eq .Values.serviceWeb.type "LoadBalancer") -}}
apiVersion: v1
kind: Service
metadata:
name: {{ template "pihole.fullname" . }}-web-ipv6
labels:
app: {{ template "pihole.name" . }}
app.kubernetes.io/name: {{ template "pihole.name" . }}
2024-11-18 18:22:12 +00:00
chart: {{ template "pihole.chart" . }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
{{- if .Values.serviceWeb.annotations }}
annotations:
{{ toYaml .Values.serviceWeb.annotations | indent 4 }}
{{- end }}
spec:
type: {{ .Values.serviceWeb.type }}
ipFamilies:
- IPv6
ipFamilyPolicy: SingleStack
{{- if .Values.serviceWeb.loadBalancerIPv6 }}
loadBalancerIP: {{ .Values.serviceWeb.loadBalancerIPv6 }}
{{- end }}
{{- if or (eq .Values.serviceWeb.type "NodePort") (eq .Values.serviceWeb.type "LoadBalancer") }}
externalTrafficPolicy: {{ .Values.serviceWeb.externalTrafficPolicy }}
{{- end }}
ports:
{{- if .Values.serviceWeb.http.enabled }}
- port: {{ .Values.serviceWeb.http.port }}
targetPort: http
protocol: TCP
name: http
{{- end }}
{{- if .Values.serviceWeb.https.enabled }}
- port: {{ .Values.serviceWeb.https.port }}
targetPort: https
protocol: TCP
name: https
{{- end }}
{{- if .Values.doh.enabled }}
- port: 49312
protocol: TCP
name: cloudflared-met
{{- end }}
selector:
app: {{ template "pihole.name" . }}
release: {{ .Release.Name }}
{{- end }}
{{- end }}