26 lines
1.1 KiB
Smarty
26 lines
1.1 KiB
Smarty
{{- define "tc.v1.common.lib.service.integration.validate" -}}
|
|
{{- $objectData := .objectData -}}
|
|
{{- $integration := .integration -}}
|
|
|
|
{{- if and $integration.sharedKey (eq $objectData.externalTrafficPolicy "Local") -}}
|
|
{{- fail (printf "Service - [sharedKey], cannot both be used together with [externalTrafficPolicy] set to [Local]" ) -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
|
|
{{- define "tc.v1.common.lib.service.loadbalancer.validate" -}}
|
|
{{- $objectData := .objectData -}}
|
|
|
|
{{- if and $objectData.loadBalancerIPs (not (kindIs "slice" $objectData.loadBalancerIPs)) -}}
|
|
{{- fail (printf "Service - Expected [loadBalancerIPs] to be a slice, but got [%s]" (kindOf $objectData.loadBalancerIPs)) -}}
|
|
{{- end -}}
|
|
|
|
{{- if and $objectData.loadBalancerIP (not (kindIs "string" $objectData.loadBalancerIP)) -}}
|
|
{{- fail (printf "Service - Expected [loadBalancerIP] to be a string, but got [%s]" (kindOf $objectData.loadBalancerIP)) -}}
|
|
{{- end -}}
|
|
|
|
{{- if and $objectData.loadBalancerIP $objectData.loadBalancerIPs -}}
|
|
{{- fail "Service - Expected one of [loadBalancerIP, loadBalancerIPs] to be defined but got both" -}}
|
|
{{- end -}}
|
|
|
|
{{- end -}}
|