35 lines
1.1 KiB
Smarty
35 lines
1.1 KiB
Smarty
{{- include "nplus.init" $ -}}
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
{{- if .this.utils.includeNamespace }}
|
|
namespace: {{ .Release.Namespace }}
|
|
{{- end }}
|
|
name: {{ .component.fullName }}
|
|
labels:
|
|
{{- include "nplus.instanceLabels" . | nindent 4 }}
|
|
annotations:
|
|
{{- include "nplus.argoWave" . | nindent 4 }}
|
|
{{- include "nplus.annotations" . | nindent 4 }}
|
|
{{- include "nplus.securityAnnotations" . | nindent 4 }}
|
|
{{- include "nplus.serviceAnnotations" . | nindent 4 }}
|
|
spec:
|
|
|
|
# this is a "headless service", no cluster IP is defined
|
|
# as none of the internal components need to access this service,
|
|
# access is purely through an ingress if desired.
|
|
type: ClusterIP
|
|
clusterIP: None
|
|
|
|
ports:
|
|
{{- include "nplus.defaultServicePorts" . | nindent 4 }}
|
|
selector:
|
|
{{- if eq .this.service.selector "component" }}
|
|
{{- include "nplus.selectorLabels" . | nindent 4 }}
|
|
{{- else if eq .this.service.selector "type" }}
|
|
{{- include "nplus.selectorLabelsNc" . | nindent 4 }}
|
|
{{- else }}
|
|
{{- fail (printf "Unknown Service Selector Type: %s - must be component or type" .this.service.selector) }}
|
|
{{- end }}
|
|
|