46 lines
1.5 KiB
Smarty
46 lines
1.5 KiB
Smarty
## Currently only used as Bitnami compatibility Layer, needs more integration during the Ingress integration project.
|
|
|
|
|
|
{{/* vim: set filetype=mustache: */}}
|
|
|
|
{{/*
|
|
Generate backend entry that is compatible with all Kubernetes API versions.
|
|
|
|
Usage:
|
|
{{ include "common.ingress.backend" (dict "serviceName" "backendName" "servicePort" "backendPort" "context" $) }}
|
|
|
|
Params:
|
|
- serviceName - String. Name of an existing service backend
|
|
- servicePort - String/Int. Port name (or number) of the service. It will be translated to different yaml depending if it is a string or an integer.
|
|
- context - Dict - Required. The context for the template evaluation.
|
|
*/}}
|
|
{{- define "common.ingress.backend" -}}
|
|
{{- $apiVersion := (include "common.capabilities.ingress.apiVersion" .context) -}}
|
|
{{- if or (eq $apiVersion "extensions/v1beta1") (eq $apiVersion "networking.k8s.io/v1beta1") -}}
|
|
serviceName: {{ .serviceName }}
|
|
servicePort: {{ .servicePort }}
|
|
{{- else -}}
|
|
service:
|
|
name: {{ .serviceName }}
|
|
port:
|
|
{{- if typeIs "string" .servicePort }}
|
|
name: {{ .servicePort }}
|
|
{{- else if typeIs "int" .servicePort }}
|
|
number: {{ .servicePort }}
|
|
{{- end }}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
|
|
{{/*
|
|
Print "true" if the API pathType field is supported
|
|
Usage:
|
|
{{ include "common.ingress.supportsPathType" . }}
|
|
*/}}
|
|
{{- define "common.ingress.supportsPathType" -}}
|
|
{{- if (semverCompare "<1.18-0" (include "common.capabilities.kubeVersion" .)) -}}
|
|
{{- print "false" -}}
|
|
{{- else -}}
|
|
{{- print "true" -}}
|
|
{{- end -}}
|
|
{{- end -}}
|