apiVersion: v1 kind: Service metadata: {{- if .Values.server.service.annotations }} annotations: {{- range $key, $value := .Values.server.service.annotations }} {{ $key }}: {{ $value | quote }} {{- end }} {{- end }} name: {{ template "argo-cd.server.fullname" . }} labels: app.kubernetes.io/name: {{ include "argo-cd.name" . }}-{{ .Values.server.name }} helm.sh/chart: {{ include "argo-cd.chart" . }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/managed-by: {{ .Release.Service }} app.kubernetes.io/part-of: argocd app.kubernetes.io/component: {{ .Values.server.name }} {{- if .Values.server.service.labels }} {{- toYaml .Values.server.service.labels | nindent 4 }} {{- end }} spec: type: {{ .Values.server.service.type }} ports: - name: {{ .Values.server.service.servicePortHttpName }} protocol: TCP port: {{ .Values.server.service.servicePortHttp }} targetPort: {{ .Values.server.name }} - name: {{ .Values.server.service.servicePortHttpsName }} protocol: TCP port: {{ .Values.server.service.servicePortHttps }} targetPort: {{ .Values.server.name }} selector: app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/name: {{ include "argo-cd.name" . }}-{{ .Values.server.name }} {{- if eq .Values.server.service.type "LoadBalancer" }} {{- if .Values.server.service.loadBalancerIP }} loadBalancerIP: {{ .Values.server.service.loadBalancerIP | quote }} {{- end }} {{- if .Values.server.service.loadBalancerSourceRanges }} loadBalancerSourceranges: {{ toYaml .Values.server.service.loadBalancerSourceRanges | indent 4 }} {{- end }} {{- end -}}