| {{/* vim: set filetype=mustache: */}} |
| {{/* |
| Expand the name of the chart. |
| */}} |
| {{- define "cert-manager.name" -}} |
| {{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} |
| {{- end -}} |
| |
| {{/* |
| Create a default fully qualified app name. |
| We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). |
| */}} |
| {{- define "cert-manager.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 the name of the service account to use |
| */}} |
| {{- define "cert-manager.serviceAccountName" -}} |
| {{- if .Values.serviceAccount.create -}} |
| {{ default (include "cert-manager.fullname" .) .Values.serviceAccount.name }} |
| {{- else -}} |
| {{ default "default" .Values.serviceAccount.name }} |
| {{- end -}} |
| {{- end -}} |
| |
| {{/* |
| Webhook templates |
| */}} |
| |
| {{/* |
| Expand the name of the chart. |
| Manually fix the 'app' and 'name' labels to 'webhook' to maintain |
| compatibility with the v0.9 deployment selector. |
| */}} |
| {{- define "webhook.name" -}} |
| {{- printf "webhook" -}} |
| {{- end -}} |
| |
| {{/* |
| Create a default fully qualified app name. |
| We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). |
| If release name contains chart name it will be used as a full name. |
| */}} |
| {{- define "webhook.fullname" -}} |
| {{- $trimmedName := printf "%s" (include "cert-manager.fullname" .) | trunc 55 | trimSuffix "-" -}} |
| {{- printf "%s-webhook" $trimmedName | trunc 63 | trimSuffix "-" -}} |
| {{- end -}} |
| |
| {{- define "webhook.caRef" -}} |
| {{- template "cert-manager.namespace" }}/{{ template "webhook.fullname" . }}-ca |
| {{- end -}} |
| |
| {{/* |
| Create the name of the service account to use |
| */}} |
| {{- define "webhook.serviceAccountName" -}} |
| {{- if .Values.webhook.serviceAccount.create -}} |
| {{ default (include "webhook.fullname" .) .Values.webhook.serviceAccount.name }} |
| {{- else -}} |
| {{ default "default" .Values.webhook.serviceAccount.name }} |
| {{- end -}} |
| {{- end -}} |
| |
| {{/* |
| cainjector templates |
| */}} |
| |
| {{/* |
| Expand the name of the chart. |
| Manually fix the 'app' and 'name' labels to 'cainjector' to maintain |
| compatibility with the v0.9 deployment selector. |
| */}} |
| {{- define "cainjector.name" -}} |
| {{- printf "cainjector" -}} |
| {{- end -}} |
| |
| {{/* |
| Create a default fully qualified app name. |
| We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). |
| If release name contains chart name it will be used as a full name. |
| */}} |
| {{- define "cainjector.fullname" -}} |
| {{- $trimmedName := printf "%s" (include "cert-manager.fullname" .) | trunc 52 | trimSuffix "-" -}} |
| {{- printf "%s-cainjector" $trimmedName | trunc 63 | trimSuffix "-" -}} |
| {{- end -}} |
| |
| {{/* |
| Create the name of the service account to use |
| */}} |
| {{- define "cainjector.serviceAccountName" -}} |
| {{- if .Values.cainjector.serviceAccount.create -}} |
| {{ default (include "cainjector.fullname" .) .Values.cainjector.serviceAccount.name }} |
| {{- else -}} |
| {{ default "default" .Values.cainjector.serviceAccount.name }} |
| {{- end -}} |
| {{- end -}} |
| |
| {{/* |
| startupapicheck templates |
| */}} |
| |
| {{/* |
| Expand the name of the chart. |
| Manually fix the 'app' and 'name' labels to 'startupapicheck' to maintain |
| compatibility with the v0.9 deployment selector. |
| */}} |
| {{- define "startupapicheck.name" -}} |
| {{- printf "startupapicheck" -}} |
| {{- end -}} |
| |
| {{/* |
| Create a default fully qualified app name. |
| We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). |
| If release name contains chart name it will be used as a full name. |
| */}} |
| {{- define "startupapicheck.fullname" -}} |
| {{- $trimmedName := printf "%s" (include "cert-manager.fullname" .) | trunc 52 | trimSuffix "-" -}} |
| {{- printf "%s-startupapicheck" $trimmedName | trunc 63 | trimSuffix "-" -}} |
| {{- end -}} |
| |
| {{/* |
| Create the name of the service account to use |
| */}} |
| {{- define "startupapicheck.serviceAccountName" -}} |
| {{- if .Values.startupapicheck.serviceAccount.create -}} |
| {{ default (include "startupapicheck.fullname" .) .Values.startupapicheck.serviceAccount.name }} |
| {{- else -}} |
| {{ default "default" .Values.startupapicheck.serviceAccount.name }} |
| {{- end -}} |
| {{- end -}} |
| |
| {{/* |
| Create chart name and version as used by the chart label. |
| */}} |
| {{- define "chartName" -}} |
| {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} |
| {{- end -}} |
| |
| {{/* |
| Labels that should be added on each resource |
| */}} |
| {{- define "labels" -}} |
| app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} |
| {{- if eq .Values.creator "helm" }} |
| app.kubernetes.io/managed-by: {{ .Release.Service }} |
| helm.sh/chart: {{ include "chartName" . }} |
| {{- end -}} |
| {{- if .Values.global.commonLabels}} |
| {{ toYaml .Values.global.commonLabels }} |
| {{- end }} |
| {{- end -}} |
| |
| {{/* |
| Namespace for all resources to be installed into |
| If not defined in values file then the helm release namespace is used |
| By default this is not set so the helm release namespace will be used |
| |
| This gets around an problem within helm discussed here |
| https://github.com/helm/helm/issues/5358 |
| */}} |
| {{- define "cert-manager.namespace" -}} |
| {{ .Values.namespace | default .Release.Namespace }} |
| {{- end -}} |
| |
| {{/* |
| Util function for generating the image URL based on the provided options. |
| IMPORTANT: This function is standardized across all charts in the cert-manager GH organization. |
| Any changes to this function should also be made in cert-manager, trust-manager, approver-policy, ... |
| See https://github.com/cert-manager/cert-manager/issues/6329 for a list of linked PRs. |
| */}} |
| {{- define "image" -}} |
| {{- $defaultTag := index . 1 -}} |
| {{- with index . 0 -}} |
| {{- if .registry -}}{{ printf "%s/%s" .registry .repository }}{{- else -}}{{- .repository -}}{{- end -}} |
| {{- if .digest -}}{{ printf "@%s" .digest }}{{- else -}}{{ printf ":%s" (default $defaultTag .tag) }}{{- end -}} |
| {{- end }} |
| {{- end }} |
| |
| {{/* |
| Check that the user has not set both .installCRDs and .crds.enabled or |
| set .installCRDs and disabled .crds.keep. |
| .installCRDs is deprecated and users should use .crds.enabled and .crds.keep instead. |
| */}} |
| {{- define "cert-manager.crd-check" -}} |
| {{- if and (.Values.installCRDs) (.Values.crds.enabled) }} |
| {{- fail "ERROR: the deprecated .installCRDs option cannot be enabled at the same time as its replacement .crds.enabled" }} |
| {{- end }} |
| {{- if and (.Values.installCRDs) (not .Values.crds.keep) }} |
| {{- fail "ERROR: .crds.keep is not compatible with .installCRDs, please use .crds.enabled and .crds.keep instead" }} |
| {{- end }} |
| {{- end -}} |