{{/* Expand the name of the chart. */}} {{- define "nats.name" -}} {{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} {{- end -}} {{- define "nats.fullname" -}} {{- if .Values.fullnameOverride -}} {{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} {{- else -}} {{- $name := default .Chart.Name .Values.nameOverride -}} {{- if contains $name .Release.Name -}} {{- .Release.Name | trunc 63 | trimSuffix "-" -}} {{- else -}} {{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} {{- end -}} {{- end -}} {{- end -}} {{/* Create chart name and version as used by the chart label. */}} {{- define "nats.chart" -}} {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} {{- end }} {{/* Common labels */}} {{- define "nats.labels" -}} helm.sh/chart: {{ include "nats.chart" . }} {{ include "nats.selectorLabels" . }} {{- if .Chart.AppVersion }} app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} {{- end }} app.kubernetes.io/managed-by: {{ .Release.Service }} {{- end }} {{/* Selector labels */}} {{- define "nats.selectorLabels" -}} app.kubernetes.io/name: {{ include "nats.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} {{/* Return the proper NATS image name */}} {{- define "nats.clusterAdvertise" -}} {{- printf "$(POD_NAME).%s.$(POD_NAMESPACE).svc" (include "nats.fullname" . ) }} {{- end }} {{/* Return the NATS cluster routes. */}} {{- define "nats.clusterRoutes" -}} {{- $name := default .Release.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} {{- range $i, $e := until (.Values.cluster.replicas | int) -}} {{- printf "nats://%s-%d.%s.%s.svc:6222," $name $i $name $.Release.Namespace -}} {{- end -}} {{- end }} {{- define "nats.tlsConfig" -}} tls { {{- if .cert }} cert_file: {{ .secretPath }}/{{ .secret.name }}/{{ .cert }} {{- end }} {{- if .key }} key_file: {{ .secretPath }}/{{ .secret.name }}/{{ .key }} {{- end }} {{- if .ca }} ca_file: {{ .secretPath }}/{{ .secret.name }}/{{ .ca }} {{- end }} {{- if .insecure }} insecure: {{ .insecure }} {{- end }} {{- if .verify }} verify: {{ .verify }} {{- end }} {{- if .verifyAndMap }} verify_and_map: {{ .verifyAndMap }} {{- end }} {{- if .curvePreferences }} curve_preferences: {{ .curvePreferences }} {{- end }} {{- if .timeout }} timeout: {{ .timeout }} {{- end }} } {{- end }}