blob: c308c3f6010ca9c5001c2c253df536d023447c22 [file] [log] [blame]
Giorgi Lekveishvili8c99d622023-05-30 14:40:50 +04001{{- if eq .Values.architecture "replication" }}
2apiVersion: v1
3kind: Service
4metadata:
5 name: {{ include "postgresql.readReplica.fullname" . }}
6 namespace: {{ .Release.Namespace | quote }}
7 labels: {{- include "common.labels.standard" . | nindent 4 }}
8 {{- if .Values.commonLabels }}
9 {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
10 {{- end }}
11 app.kubernetes.io/component: read
12 {{- if or .Values.commonAnnotations .Values.readReplicas.service.annotations }}
13 annotations:
14 {{- if .Values.commonAnnotations }}
15 {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
16 {{- end }}
17 {{- if .Values.readReplicas.service.annotations }}
18 {{- include "common.tplvalues.render" (dict "value" .Values.readReplicas.service.annotations "context" $) | nindent 4 }}
19 {{- end }}
20 {{- end }}
21spec:
22 type: {{ .Values.readReplicas.service.type }}
23 {{- if or (eq .Values.readReplicas.service.type "LoadBalancer") (eq .Values.readReplicas.service.type "NodePort") }}
24 externalTrafficPolicy: {{ .Values.readReplicas.service.externalTrafficPolicy | quote }}
25 {{- end }}
26 {{- if and (eq .Values.readReplicas.service.type "LoadBalancer") (not (empty .Values.readReplicas.service.loadBalancerSourceRanges)) }}
27 loadBalancerSourceRanges: {{ .Values.readReplicas.service.loadBalancerSourceRanges }}
28 {{- end }}
29 {{- if and (eq .Values.readReplicas.service.type "LoadBalancer") (not (empty .Values.readReplicas.service.loadBalancerIP)) }}
30 loadBalancerIP: {{ .Values.readReplicas.service.loadBalancerIP }}
31 {{- end }}
32 {{- if and .Values.readReplicas.service.clusterIP (eq .Values.readReplicas.service.type "ClusterIP") }}
33 clusterIP: {{ .Values.readReplicas.service.clusterIP }}
34 {{- end }}
35 {{- if .Values.readReplicas.service.sessionAffinity }}
36 sessionAffinity: {{ .Values.readReplicas.service.sessionAffinity }}
37 {{- end }}
38 {{- if .Values.readReplicas.service.sessionAffinityConfig }}
39 sessionAffinityConfig: {{- include "common.tplvalues.render" (dict "value" .Values.readReplicas.service.sessionAffinityConfig "context" $) | nindent 4 }}
40 {{- end }}
41 ports:
42 - name: tcp-postgresql
43 port: {{ include "postgresql.readReplica.service.port" . }}
44 targetPort: tcp-postgresql
45 {{- if and (or (eq .Values.readReplicas.service.type "NodePort") (eq .Values.readReplicas.service.type "LoadBalancer")) (not (empty .Values.readReplicas.service.nodePorts.postgresql)) }}
46 nodePort: {{ .Values.readReplicas.service.nodePorts.postgresql }}
47 {{- else if eq .Values.readReplicas.service.type "ClusterIP" }}
48 nodePort: null
49 {{- end }}
50 {{- if .Values.readReplicas.service.extraPorts }}
51 {{- include "common.tplvalues.render" (dict "value" .Values.readReplicas.service.extraPorts "context" $) | nindent 4 }}
52 {{- end }}
53 selector: {{- include "common.labels.matchLabels" . | nindent 4 }}
54 app.kubernetes.io/component: read
55{{- end }}