2023-02-13 16:48:20 +00:00
|
|
|
{{/*
|
|
|
|
Copyright (c) HashiCorp, Inc.
|
|
|
|
SPDX-License-Identifier: MPL-2.0
|
|
|
|
*/}}
|
|
|
|
|
2020-02-21 16:16:33 +00:00
|
|
|
{{ template "vault.mode" . }}
|
|
|
|
{{- if ne .mode "external" }}
|
2022-03-21 16:50:23 +00:00
|
|
|
{{- template "vault.serverServiceEnabled" . -}}
|
|
|
|
{{- if .serverServiceEnabled -}}
|
2020-02-06 16:44:38 +00:00
|
|
|
# Service for Vault cluster
|
2018-08-18 05:08:03 +00:00
|
|
|
apiVersion: v1
|
|
|
|
kind: Service
|
|
|
|
metadata:
|
2019-07-31 18:26:12 +00:00
|
|
|
name: {{ template "vault.fullname" . }}
|
2023-07-04 13:30:35 +00:00
|
|
|
namespace: {{ include "vault.namespace" . }}
|
2018-08-18 05:08:03 +00:00
|
|
|
labels:
|
2019-08-07 18:55:32 +00:00
|
|
|
helm.sh/chart: {{ include "vault.chart" . }}
|
|
|
|
app.kubernetes.io/name: {{ include "vault.name" . }}
|
|
|
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
|
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
2018-08-18 05:08:03 +00:00
|
|
|
annotations:
|
2020-04-27 15:28:50 +00:00
|
|
|
{{ template "vault.service.annotations" .}}
|
2018-08-18 05:08:03 +00:00
|
|
|
spec:
|
2019-10-06 20:06:45 +00:00
|
|
|
{{- if .Values.server.service.type}}
|
|
|
|
type: {{ .Values.server.service.type }}
|
|
|
|
{{- end}}
|
2023-08-24 22:14:19 +00:00
|
|
|
{{- if (semverCompare ">= 1.23-0" .Capabilities.KubeVersion.Version) }}
|
|
|
|
{{- if .Values.server.service.ipFamilyPolicy }}
|
|
|
|
ipFamilyPolicy: {{ .Values.server.service.ipFamilyPolicy }}
|
|
|
|
{{- end }}
|
|
|
|
{{- if .Values.server.service.ipFamilies }}
|
|
|
|
ipFamilies: {{ .Values.server.service.ipFamilies | toYaml | nindent 2 }}
|
|
|
|
{{- end }}
|
|
|
|
{{- end }}
|
2019-08-12 13:57:56 +00:00
|
|
|
{{- if .Values.server.service.clusterIP }}
|
2019-08-08 18:14:58 +00:00
|
|
|
clusterIP: {{ .Values.server.service.clusterIP }}
|
2019-08-12 13:57:56 +00:00
|
|
|
{{- end }}
|
2021-10-18 13:45:52 +00:00
|
|
|
{{- include "service.externalTrafficPolicy" .Values.server.service }}
|
2018-08-18 05:08:03 +00:00
|
|
|
# We want the servers to become available even if they're not ready
|
|
|
|
# since this DNS is also used for join operations.
|
2022-03-17 17:52:53 +00:00
|
|
|
publishNotReadyAddresses: {{ .Values.server.service.publishNotReadyAddresses }}
|
2018-08-18 05:08:03 +00:00
|
|
|
ports:
|
2020-04-13 15:48:23 +00:00
|
|
|
- name: {{ include "vault.scheme" . }}
|
2019-09-06 15:13:23 +00:00
|
|
|
port: {{ .Values.server.service.port }}
|
|
|
|
targetPort: {{ .Values.server.service.targetPort }}
|
2019-12-18 17:22:19 +00:00
|
|
|
{{- if and (.Values.server.service.nodePort) (eq (.Values.server.service.type | toString) "NodePort") }}
|
|
|
|
nodePort: {{ .Values.server.service.nodePort }}
|
|
|
|
{{- end }}
|
2020-04-13 15:48:23 +00:00
|
|
|
- name: https-internal
|
2019-07-31 18:26:12 +00:00
|
|
|
port: 8201
|
|
|
|
targetPort: 8201
|
2018-08-18 05:08:03 +00:00
|
|
|
selector:
|
2019-08-08 18:14:58 +00:00
|
|
|
app.kubernetes.io/name: {{ include "vault.name" . }}
|
2022-11-17 19:54:18 +00:00
|
|
|
{{- if eq (.Values.server.service.instanceSelector.enabled | toString) "true" }}
|
2019-08-08 18:14:58 +00:00
|
|
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
2022-11-17 19:54:18 +00:00
|
|
|
{{- end }}
|
2018-08-18 21:38:33 +00:00
|
|
|
component: server
|
2018-08-18 05:08:03 +00:00
|
|
|
{{- end }}
|
2020-02-21 16:16:33 +00:00
|
|
|
{{- end }}
|