143 lines
4.4 KiB
Smarty
143 lines
4.4 KiB
Smarty
{{/*
|
|
Create a default fully qualified etcd name.
|
|
*/}}
|
|
{{- define "etcd.fullname" -}}
|
|
{{- printf "etcd" }}
|
|
{{- end }}
|
|
|
|
{{/*
|
|
Create the name of the service account to use
|
|
*/}}
|
|
{{- define "etcd.serviceAccountName" -}}
|
|
{{- if .Values.etcd.serviceAccount.create }}
|
|
{{- default (include "etcd.fullname" .) .Values.etcd.serviceAccount.name }}
|
|
{{- else }}
|
|
{{- default "default" .Values.etcd.serviceAccount.name }}
|
|
{{- end }}
|
|
{{- end }}
|
|
|
|
{{/*
|
|
Create the name of the Service to use
|
|
*/}}
|
|
{{- define "etcd.serviceName" -}}
|
|
{{- printf "%s" (include "etcd.fullname" .) | trunc 63 | trimSuffix "-" }}
|
|
{{- end }}
|
|
|
|
{{/*
|
|
Common labels
|
|
*/}}
|
|
{{- define "etcd.labels" -}}
|
|
app.kubernetes.io/name: {{ include "kamaji.name" . }}
|
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
app.kubernetes.io/components: etcd
|
|
{{- end }}
|
|
|
|
{{/*
|
|
Selector labels.
|
|
*/}}
|
|
{{- define "etcd.selectorLabels" -}}
|
|
app.kubernetes.io/name: {{ include "kamaji.name" . }}
|
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
app.kubernetes.io/component: etcd
|
|
{{- end }}
|
|
|
|
{{/*
|
|
Name of the etcd CA secret.
|
|
*/}}
|
|
{{- define "etcd.caSecretName" }}
|
|
{{- if .Values.etcd.deploy }}
|
|
{{- printf "%s-%s" (include "etcd.fullname" .) "certs" | trunc 63 | trimSuffix "-" }}
|
|
{{- else }}
|
|
{{- required "A valid .Values.etcd.overrides.caSecret.name required!" .Values.etcd.overrides.caSecret.name }}
|
|
{{- end }}
|
|
{{- end }}
|
|
|
|
{{/*
|
|
Namespace of the etcd CA secret.
|
|
*/}}
|
|
{{- define "etcd.caSecretNamespace" }}
|
|
{{- if .Values.etcd.deploy }}
|
|
{{- .Release.Namespace }}
|
|
{{- else }}
|
|
{{- required "A valid .Values.etcd.overrides.caSecret.namespace required!" .Values.etcd.overrides.caSecret.namespace }}
|
|
{{- end }}
|
|
{{- end }}
|
|
|
|
{{/*
|
|
Name of the certificate signing requests for the certificates required by etcd.
|
|
*/}}
|
|
{{- define "etcd.csrConfigMapName" }}
|
|
{{- printf "%s-csr" (include "etcd.fullname" .) }}
|
|
{{- end }}
|
|
|
|
{{/*
|
|
Name of the etcd root-client secret.
|
|
*/}}
|
|
{{- define "etcd.clientSecretName" }}
|
|
{{- if .Values.etcd.deploy }}
|
|
{{- printf "root-client-certs" }}
|
|
{{- else }}
|
|
{{- required "A valid .Values.etcd.overrides.clientSecret.name required!" .Values.etcd.overrides.clientSecret.name }}
|
|
{{- end }}
|
|
{{- end }}
|
|
|
|
{{/*
|
|
Namespace of the etcd root-client secret.
|
|
*/}}
|
|
{{- define "etcd.clientSecretNamespace" }}
|
|
{{- if .Values.etcd.deploy }}
|
|
{{- .Release.Namespace }}
|
|
{{- else }}
|
|
{{- required "A valid .Values.etcd.overrides.clientSecret.namespace required!" .Values.etcd.overrides.clientSecret.namespace }}
|
|
{{- end }}
|
|
{{- end }}
|
|
|
|
{{/*
|
|
Comma separated list of etcd endpoints, using the overrides in case of unmanaged etcd.
|
|
*/}}
|
|
{{- define "etcd.endpoints" }}
|
|
{{- $list := list -}}
|
|
{{- if .Values.etcd.deploy }}
|
|
{{- range $count := until 3 -}}
|
|
{{- $list = append $list (printf "%s-%d.%s.%s.svc.cluster.local:%d" "etcd" $count ( include "etcd.serviceName" . ) $.Release.Namespace (int $.Values.etcd.port) ) -}}
|
|
{{- end }}
|
|
{{- else if .Values.etcd.overrides.endpoints }}
|
|
{{- range $v := .Values.etcd.overrides.endpoints -}}
|
|
{{- $list = append $list (printf "%s:%d" $v (int $.Values.etcd.port) ) -}}
|
|
{{- end -}}
|
|
{{- else if not .Values.etcd.overrides.endpoints }}
|
|
{{- fail "A valid .Values.etcd.overrides.endpoints required!" }}
|
|
{{- end }}
|
|
{{- $list | toYaml }}
|
|
{{- end }}
|
|
|
|
{{/*
|
|
Key-value of the etcd peers, using the overrides in case of unmanaged etcd.
|
|
*/}}
|
|
{{- define "etcd.initialCluster" }}
|
|
{{- $list := list -}}
|
|
{{- if .Values.etcd.deploy }}
|
|
{{- range $i, $count := until 3 -}}
|
|
{{- $list = append $list ( printf "etcd-%d=https://%s-%d.%s.%s.svc.cluster.local:%d" $i "etcd" $count ( include "etcd.serviceName" . ) $.Release.Namespace (int $.Values.etcd.peerApiPort) ) -}}
|
|
{{- end }}
|
|
{{- else if .Values.etcd.overrides.endpoints }}
|
|
{{- range $k, $v := .Values.etcd.overrides.endpoints -}}
|
|
{{- $list = append $list ( printf "%s=%s:%d" $k $v (int $.Values.etcd.peerApiPort) ) -}}
|
|
{{- end -}}
|
|
{{- else if not .Values.etcd.overrides.endpoints }}
|
|
{{- fail "A valid .Values.etcd.overrides.endpoints required!" }}
|
|
{{- end }}
|
|
{{- join "," $list -}}
|
|
{{- end }}
|
|
|
|
{{/*
|
|
Retrieve the current Kubernetes version to launch a kubectl container with the minimum version skew possible.
|
|
*/}}
|
|
{{- define "etcd.jobsTagKubeVersion" -}}
|
|
{{- if contains "-eks-" .Capabilities.KubeVersion.GitVersion }}
|
|
{{- print "v" .Capabilities.KubeVersion.Major "." (.Capabilities.KubeVersion.Minor | replace "+" "") -}}
|
|
{{- else }}
|
|
{{- print "v" .Capabilities.KubeVersion.Major "." .Capabilities.KubeVersion.Minor -}}
|
|
{{- end }}
|
|
{{- end }}
|