apiVersion: v1
kind: Service
metadata:
  name: {{ template "fullname" . }}
  labels:
    app: {{ .Chart.Name }}
    service: web
    branch: {{ .Values.branchName }}
    track: {{ .Values.track }}
    chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
  {{ if not .Values.ingress.enabled }}
  annotations:
    {{ range $key, $value := .Values.service.annotations }}
      {{ $key }}: {{ $value | quote }}
    {{ end }}
  {{ end }}
spec:
  {{ if .Values.ingress.enabled }}
  type: ClusterIP
  {{ else }}
  type: LoadBalancer
  {{ end }}
  ports:
  - targetPort: {{ .Values.service.internalPort }}
  {{ if .Values.ingress.enabled }}
    port: {{ .Values.service.externalPort }}
  {{ else }}
    port: {{ .Values.service.externalTLSPort }}
  {{ end }}
    protocol: TCP
    name: {{ .Values.service.name }}
  selector:
    app: {{ template "fullname" . }}
    service: app
