| {{- if .Values.service.enabled }} |
| apiVersion: v1 |
| kind: Service |
| metadata: |
| name: {{ include "dubbo-admin.fullname" . }} |
| namespace: {{ include "dubbo-admin.namespace" . }} |
| labels: |
| {{- include "dubbo-admin.labels" . | nindent 4 }} |
| spec: |
| {{- if (or (eq .Values.service.type "ClusterIP") (empty .Values.service.type)) }} |
| type: ClusterIP |
| {{- with .Values.service.clusterIP }} |
| clusterIP: {{ . }} |
| {{- end }} |
| {{- else if eq .Values.service.type "LoadBalancer" }} |
| type: {{ .Values.service.type }} |
| {{- with .Values.service.loadBalancerIP }} |
| loadBalancerIP: {{ . }} |
| {{- end }} |
| {{- with .Values.service.loadBalancerSourceRanges }} |
| loadBalancerSourceRanges: |
| {{- toYaml . | nindent 4 }} |
| {{- end }} |
| {{- else }} |
| type: {{ .Values.service.type }} |
| {{- end }} |
| {{- with .Values.service.externalIPs }} |
| externalIPs: |
| {{- toYaml . | nindent 4 }} |
| {{- end }} |
| ports: |
| - name: {{ .Values.service.portName }} |
| port: {{ .Values.service.port }} |
| protocol: {{ .Values.service.protocol }} |
| targetPort: {{ .Values.service.targetPort }} |
| {{- with .Values.service.appProtocol }} |
| appProtocol: {{ . }} |
| {{- end }} |
| {{- if (and (eq .Values.service.type "NodePort") (not (empty .Values.service.nodePort))) }} |
| nodePort: {{ .Values.service.nodePort }} |
| {{- end }} |
| selector: |
| {{- include "dubbo-admin.selectorLabels" . | nindent 4 }} |
| {{- end }} |
| |
| |