mirror of
https://github.com/bjw-s-labs/helm-charts.git
synced 2025-07-03 00:27:04 +02:00
- Removed: **BREAKING**: Removed support for HorizontalPodAutoscaler - Added: Support services have extraSelectorLabels (#58) - Added: support for `httpGet` probes - Added: support for setting labels / annotations on volumeClaimTemplates - Changed: **BREAKING**: Restructure of template components. All Helm templates have been renamed / namespaced. E.g. `common.values.setup` has now become `bjw-s.common.loader.init`. - Changed: **BREAKING**: Raised minimum supported k8s version to 1.22 - Changed: **BREAKING**: Renamed `configmap` key to `configMaps` - Changed: **BREAKING**: Moved `serviceMonitor` from `service` to its own key - Changed: **BREAKING**: Renamed `secret` key to `secrets`, which now works similar to `configMaps` - Changed: Updated code-server image to v4.8.2 - Changed: Updated gluetun image to v3.32.0 - Fixed: Fix NOTES always showing ingress protocol as http (#62) Signed-off-by: Gavin Mogan <git@gavinmogan.com> Co-authored-by: Gavin Mogan <github@gavinmogan.com> Co-authored-by: Gabe Cook <gabe565@gmail.com>
47 lines
1.6 KiB
Smarty
47 lines
1.6 KiB
Smarty
{{/*
|
|
Probes selection logic.
|
|
*/}}
|
|
{{- define "bjw-s.common.lib.container.probes" -}}
|
|
{{- $primaryService := get .Values.service (include "bjw-s.common.lib.service.primary" .) -}}
|
|
{{- $primaryPort := "" -}}
|
|
{{- if $primaryService -}}
|
|
{{- $primaryPort = get $primaryService.ports (include "bjw-s.common.lib.service.primaryPort" (dict "serviceName" (include "bjw-s.common.lib.service.primary" .) "values" $primaryService)) -}}
|
|
{{- end -}}
|
|
|
|
{{- range $probeName, $probe := .Values.probes }}
|
|
{{- if $probe.enabled -}}
|
|
{{- "" | nindent 0 }}
|
|
{{- $probeName }}Probe:
|
|
{{- if $probe.custom -}}
|
|
{{- $probe.spec | toYaml | nindent 2 }}
|
|
{{- else }}
|
|
{{- if and $primaryService $primaryPort -}}
|
|
{{- $probeType := "" -}}
|
|
{{- if eq $probe.type "AUTO" -}}
|
|
{{- $probeType = $primaryPort.protocol -}}
|
|
{{- else -}}
|
|
{{- $probeType = $probe.type | default "TCP" -}}
|
|
{{- end }}
|
|
{{- if or ( eq $probeType "HTTPS" ) ( eq $probeType "HTTP" ) -}}
|
|
httpGet:
|
|
path: {{ $probe.path }}
|
|
scheme: {{ $probeType }}
|
|
{{- else }}
|
|
tcpSocket:
|
|
{{- end }}
|
|
{{- if $probe.port }}
|
|
port: {{ ( tpl ( $probe.port | toString ) $ ) }}
|
|
{{- else if $primaryPort.targetPort }}
|
|
port: {{ $primaryPort.targetPort }}
|
|
{{- else }}
|
|
port: {{ $primaryPort.port }}
|
|
{{- end }}
|
|
initialDelaySeconds: {{ $probe.spec.initialDelaySeconds }}
|
|
failureThreshold: {{ $probe.spec.failureThreshold }}
|
|
timeoutSeconds: {{ $probe.spec.timeoutSeconds }}
|
|
periodSeconds: {{ $probe.spec.periodSeconds }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|