blob: 920626016ae812a6a89a032a51349842d8b6125b [file] [log] [blame]
Giorgi Lekveishvili0ba5e402024-03-20 15:56:30 +04001{{- if not .Values.serviceDns.mixedService }}
2apiVersion: v1
3kind: Service
4metadata:
5 name: {{ template "pihole.fullname" . }}-dns-tcp
6 labels:
7 app: {{ template "pihole.name" . }}
8 chart: {{ template "pihole.chart" . }}
9 release: {{ .Release.Name }}
10 heritage: {{ .Release.Service }}
11{{- if .Values.serviceDns.annotations }}
12 annotations:
13{{ toYaml .Values.serviceDns.annotations | indent 4 }}
14{{- end }}
15spec:
16 type: {{ .Values.serviceDns.type }}
17 {{- if and (.Values.dualStack.enabled) (not (eq .Values.serviceDns.type "LoadBalancer")) }}
18 ipFamilies:
19 - IPv4
20 - IPv6
21 ipFamilyPolicy: PreferDualStack
22 {{- end }}
23 {{- if .Values.serviceDns.loadBalancerIP }}
24 loadBalancerIP: {{ .Values.serviceDns.loadBalancerIP }}
25 {{- end }}
26 {{- if or (eq .Values.serviceDns.type "NodePort") (eq .Values.serviceDns.type "LoadBalancer") }}
27 externalTrafficPolicy: {{ .Values.serviceDns.externalTrafficPolicy }}
28 {{- end }}
29 ports:
30 - port: {{ .Values.serviceDns.port }}
31 targetPort: dns
32 {{- if and (.Values.serviceDns.nodePort) (eq .Values.serviceDns.type "NodePort") }}
33 nodePort: {{ .Values.serviceDns.nodePort }}
34 {{- end }}
35 protocol: TCP
36 name: dns
37 {{- if .Values.monitoring.sidecar.enabled }}
38 - port: {{ .Values.monitoring.sidecar.port }}
39 targetPort: prometheus
40 protocol: TCP
41 name: prometheus
42 {{- end }}
43 selector:
44 app: {{ template "pihole.name" . }}
45 release: {{ .Release.Name }}
46---
47{{- if and (.Values.dualStack.enabled) (eq .Values.serviceDns.type "LoadBalancer") -}}
48apiVersion: v1
49kind: Service
50metadata:
51 name: {{ template "pihole.fullname" . }}-dns-tcp-ipv6
52 labels:
53 app: {{ template "pihole.name" . }}
54 chart: {{ template "pihole.chart" . }}
55 release: {{ .Release.Name }}
56 heritage: {{ .Release.Service }}
57{{- if .Values.serviceDns.annotations }}
58 annotations:
59{{ toYaml .Values.serviceDns.annotations | indent 4 }}
60{{- end }}
61spec:
62 type: {{ .Values.serviceDns.type }}
63 ipFamilies:
64 - IPv6
65 ipFamilyPolicy: SingleStack
66 {{- if .Values.serviceDns.loadBalancerIPv6 }}
67 loadBalancerIP: {{ .Values.serviceDns.loadBalancerIPv6 }}
68 {{- end }}
69 {{- if or (eq .Values.serviceDns.type "NodePort") (eq .Values.serviceDns.type "LoadBalancer") }}
70 externalTrafficPolicy: {{ .Values.serviceDns.externalTrafficPolicy }}
71 {{- end }}
72 ports:
73 - port: {{ .Values.serviceDns.port }}
74 targetPort: dns
75 protocol: TCP
76 name: dns
77 {{- if .Values.monitoring.sidecar.enabled }}
78 - port: {{ .Values.monitoring.sidecar.port }}
79 targetPort: prometheus
80 protocol: TCP
81 name: prometheus
82 {{- end }}
83 selector:
84 app: {{ template "pihole.name" . }}
85 release: {{ .Release.Name }}
86{{- end }}
87{{- end }}