mirror of
https://github.com/bjw-s-labs/helm-charts.git
synced 2025-07-04 08:57:04 +02:00
22 lines
982 B
Smarty
22 lines
982 B
Smarty
{{/*
|
|
Validate networkPolicy values
|
|
*/}}
|
|
{{- define "bjw-s.common.lib.networkpolicy.validate" -}}
|
|
{{- $rootContext := .rootContext -}}
|
|
{{- $networkpolicyObject := .object -}}
|
|
|
|
{{- if and (not (hasKey $networkpolicyObject "podSelector")) (empty (get $networkpolicyObject "controller")) -}}
|
|
{{- fail (printf "controller reference or podSelector is required for NetworkPolicy. (NetworkPolicy %s)" $networkpolicyObject.identifier) -}}
|
|
{{- end -}}
|
|
|
|
{{- if empty (get $networkpolicyObject "policyTypes") -}}
|
|
{{- fail (printf "policyTypes is required for NetworkPolicy. (NetworkPolicy %s)" $networkpolicyObject.identifier) -}}
|
|
{{- end -}}
|
|
|
|
{{- $allowedpolicyTypes := list "Ingress" "Egress" -}}
|
|
{{- range $networkpolicyObject.policyTypes -}}
|
|
{{- if not (has . $allowedpolicyTypes) -}}
|
|
{{- fail (printf "Not a valid policyType for NetworkPolicy. (NetworkPolicy %s, value %s)" $networkpolicyObject.identifier .) -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
{{- end -}}
|