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