_helpers.tpl 5.73 KB
{{/*
Expand the name of the chart.
*/}}
{{- define "moqui.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).
If release name contains chart name it will be used as a full name.
*/}}
{{- define "moqui.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 "moqui.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}

{{/*
Common labels
*/}}
{{- define "moqui.labels" -}}
helm.sh/chart: {{ include "moqui.chart" . }}
{{ include "moqui.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}

{{/*
Selector labels
*/}}
{{- define "moqui.selectorLabels" -}}
app.kubernetes.io/name: {{ include "moqui.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}

{{/*
Create the name of the service account to use
*/}}
{{- define "moqui.serviceAccountName" -}}
{{- if .Values.serviceAccount.create }}
{{- default (include "moqui.fullname" .) .Values.serviceAccount.name }}
{{- else }}
{{- default "default" .Values.serviceAccount.name }}
{{- end }}
{{- end }}

{{- define "moqui.opensearch-url" -}}
{{- if .Values.opensearch.enabled -}}
"https://{{- include "opensearch.masterService" .Subcharts.opensearch }}:{{ .Values.opensearch.httpPort }}"
{{- else }}
{{- printf "%s" .Values.opensearch.url }}
{{- end }}
{{- end }}

{{- define "moqui.image-helper" -}}
image: "{{ if .registry }}{{ .registry }}/{{ end }}{{ .repository }}{{ if .tag }}:{{ .tag }}{{ end }}"
imagePullPolicy: {{ .pullPolicy }}
{{- end }}

{{- define "moqui.entity_ds_host" -}}
{{-   if (and (eq .Values.configMap.entity_ds_db_conf "postgres") .Values.postgresql.enabled) }}
{{-     include "postgresql.primary.svc.headless" .Subcharts.postgresql }}
{{-   else -}}
{{      .Values.configMap.entity_ds_host }}
{{-   end -}}
{{- end }}

{{- define "moqui.entity_ds_port" -}}
{{-   if (and (eq .Values.configMap.entity_ds_db_conf "postgres") .Values.postgresql.enabled) }}
{{-     include "postgresql.service.port" .Subcharts.postgresql }}
{{-   else -}}
{{      .Values.configMap.entity_ds_port }}
{{-   end -}}
{{- end }}

{{- define "moqui.entity_ds_database" -}}
{{-   if (and (eq .Values.configMap.entity_ds_db_conf "postgres") .Values.postgresql.enabled) }}
{{-     include "postgresql.database" .Subcharts.postgresql }}
{{-   else -}}
{{      .Values.configMap.entity_ds_database }}
{{-   end -}}
{{- end }}

{{- define "moqui.entity_ds_user" -}}
{{-   if (and (eq .Values.configMap.entity_ds_db_conf "postgres") .Values.postgresql.enabled) }}
{{-     include "postgresql.username" .Subcharts.postgresql }}
{{-   else -}}
{{      .Values.configMap.entity_ds_user }}
{{-   end -}}
{{- end }}

{{- define "moqui.entity_ds_password.secret.name" -}}
{{-   if (and (eq .Values.configMap.entity_ds_db_conf "postgres") .Values.postgresql.enabled) -}}
{{-     include "postgresql.secretName" .Subcharts.postgresql }}
{{-   else -}}
{{      include "moqui.fullname" . }}-dsauth
{{-   end -}}
{{- end }}

{{- define "moqui.entity_ds_password.secret.key" -}}
{{-   if (and (eq .Values.configMap.entity_ds_db_conf "postgres") .Values.postgresql.enabled) -}}
password
{{-   else -}}
entity_ds_password
{{-   end -}}
{{- end }}

{{- define "moqui.storage-volumeClaimTemplate" }}
{{- $ := index . 0 }}
{{- $name := index . 1 }}
{{- $persistence := index $.Values.persistence $name }}
{{-  if and ($persistence.enabled) (eq "StatefulSet" $.Values.kind) -}}
- metadata:
    name: storage-{{ $name }}
  spec:
    storageClassName: {{ $persistence.storageClassName }}
    accessModes: {{ $persistence.accessModes | toYaml | nindent 6 }}
    resources: {{ $persistence.resources | toYaml | nindent 6 }}
{{-  end }}
{{- end }}

{{- define "moqui.storage-pvc" }}
{{- $ := index . 0 }}
{{- $name := index . 1 }}
{{- $persistence := index $.Values.persistence $name }}
{{-  if and ($persistence.enabled) (ne "StatefulSet" $.Values.kind) -}}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: {{ include "moqui.fullname" $ }}-{{ $name }}
spec:
  storageClassName: {{ $persistence.storageClassName }}
  accessModes: {{ $persistence.accessModes | toYaml | nindent 6 }}
  resources: {{ $persistence.resources | toYaml | nindent 6 }}
---
{{-  end }}
{{- end }}

{{- define "moqui.storage-pvc-volume" }}
{{- $ := index . 0 }}
{{- $name := index . 1 }}
{{- $persistence := index $.Values.persistence $name }}
{{-  if and ($persistence.enabled) (ne "StatefulSet" $.Values.kind) -}}
- name: storage-{{ $name }}
  persistentVolumeClaim:
    claimName: {{ include "moqui.fullname" $ }}-{{ $name }}
{{-  end }}
{{- end }}

{{- define "moqui.storage-mount" }}
{{- $ := index . 0 }}
{{- $name := index . 1 }}
{{- $mountPath := index . 2 }}
{{- $persistence := index $.Values.persistence $name }}
{{-   if $persistence.enabled -}}
- mountPath: {{ $mountPath }}
  name: storage-{{ $name }}
{{-   end }}
{{- end }}

{{ define "moqui.health-probe" }}
{{- $name := index . 0 }}
{{- $probe := index . 1 }}
{{-  if $probe.enabled }}
{{ $name }}:{{ $probe.probe | toYaml | nindent 2 }}
{{-  end }}
{{- end }}

{{- define "moqui.extraEnvs" }}
{{-  if .Values.extraEnvs }}
{{ .Values.extraEnvs | toYaml }}
{{-  end }}
{{- end }}