91 lines
2.8 KiB
YAML
91 lines
2.8 KiB
YAML
|
{{- if not .Values.serviceDns.mixedService }}
|
||
|
apiVersion: v1
|
||
|
kind: Service
|
||
|
metadata:
|
||
|
name: {{ template "pihole.fullname" . }}-dns-tcp
|
||
|
labels:
|
||
|
app: {{ template "pihole.name" . }}
|
||
|
chart: {{ template "pihole.chart" . }}
|
||
|
release: {{ .Release.Name }}
|
||
|
heritage: {{ .Release.Service }}
|
||
|
{{- if .Values.serviceDns.extraLabels }}
|
||
|
{{ toYaml .Values.serviceDns.extraLabels | indent 4 }}
|
||
|
{{- end }}
|
||
|
{{- if .Values.serviceDns.annotations }}
|
||
|
annotations:
|
||
|
{{ toYaml .Values.serviceDns.annotations | indent 4 }}
|
||
|
{{- end }}
|
||
|
spec:
|
||
|
type: {{ .Values.serviceDns.type }}
|
||
|
{{- if and (.Values.dualStack.enabled) (not (eq .Values.serviceDns.type "LoadBalancer")) }}
|
||
|
ipFamilies:
|
||
|
- IPv4
|
||
|
- IPv6
|
||
|
ipFamilyPolicy: PreferDualStack
|
||
|
{{- end }}
|
||
|
{{- if .Values.serviceDns.loadBalancerIP }}
|
||
|
loadBalancerIP: {{ .Values.serviceDns.loadBalancerIP }}
|
||
|
{{- end }}
|
||
|
{{- if or (eq .Values.serviceDns.type "NodePort") (eq .Values.serviceDns.type "LoadBalancer") }}
|
||
|
externalTrafficPolicy: {{ .Values.serviceDns.externalTrafficPolicy }}
|
||
|
{{- end }}
|
||
|
ports:
|
||
|
- port: {{ .Values.serviceDns.port }}
|
||
|
targetPort: dns
|
||
|
{{- if and (.Values.serviceDns.nodePort) (eq .Values.serviceDns.type "NodePort") }}
|
||
|
nodePort: {{ .Values.serviceDns.nodePort }}
|
||
|
{{- end }}
|
||
|
protocol: TCP
|
||
|
name: dns
|
||
|
{{- if .Values.monitoring.sidecar.enabled }}
|
||
|
- port: {{ .Values.monitoring.sidecar.port }}
|
||
|
targetPort: prometheus
|
||
|
protocol: TCP
|
||
|
name: prometheus
|
||
|
{{- end }}
|
||
|
selector:
|
||
|
app: {{ template "pihole.name" . }}
|
||
|
release: {{ .Release.Name }}
|
||
|
---
|
||
|
{{- if and (.Values.dualStack.enabled) (eq .Values.serviceDns.type "LoadBalancer") -}}
|
||
|
apiVersion: v1
|
||
|
kind: Service
|
||
|
metadata:
|
||
|
name: {{ template "pihole.fullname" . }}-dns-tcp-ipv6
|
||
|
labels:
|
||
|
app: {{ template "pihole.name" . }}
|
||
|
chart: {{ template "pihole.chart" . }}
|
||
|
release: {{ .Release.Name }}
|
||
|
heritage: {{ .Release.Service }}
|
||
|
{{- if .Values.serviceDns.annotations }}
|
||
|
annotations:
|
||
|
{{ toYaml .Values.serviceDns.annotations | indent 4 }}
|
||
|
{{- end }}
|
||
|
spec:
|
||
|
type: {{ .Values.serviceDns.type }}
|
||
|
ipFamilies:
|
||
|
- IPv6
|
||
|
ipFamilyPolicy: SingleStack
|
||
|
{{- if .Values.serviceDns.loadBalancerIPv6 }}
|
||
|
loadBalancerIP: {{ .Values.serviceDns.loadBalancerIPv6 }}
|
||
|
{{- end }}
|
||
|
{{- if or (eq .Values.serviceDns.type "NodePort") (eq .Values.serviceDns.type "LoadBalancer") }}
|
||
|
externalTrafficPolicy: {{ .Values.serviceDns.externalTrafficPolicy }}
|
||
|
{{- end }}
|
||
|
ports:
|
||
|
- port: {{ .Values.serviceDns.port }}
|
||
|
targetPort: dns
|
||
|
protocol: TCP
|
||
|
name: dns
|
||
|
{{- if .Values.monitoring.sidecar.enabled }}
|
||
|
- port: {{ .Values.monitoring.sidecar.port }}
|
||
|
targetPort: prometheus
|
||
|
protocol: TCP
|
||
|
name: prometheus
|
||
|
{{- end }}
|
||
|
selector:
|
||
|
app: {{ template "pihole.name" . }}
|
||
|
release: {{ .Release.Name }}
|
||
|
{{- end }}
|
||
|
{{- end }}
|