{{ $selectors := list }} {{ $selectors = mustAppend $selectors (dict "key" "app" "value" (include "common.names.name" .) ) }} {{ $selectors = mustAppend $selectors (dict "key" "release" "value" .Release.Name ) }} {{ $ports := list }} {{- if not .Values.hostNetwork }} {{ $ports = mustAppend $ports (dict "name" "web" "port" .Values.webUIPort "nodePort" .Values.webUIPort "targetPort" .Values.webUIPort) }} {{ $ports = mustAppend $ports (dict "name" "udp" "port" .Values.wgUDPPort "nodePort" .Values.wgUDPPort "targetPort" .Values.wgUDPPort "protocol" "UDP") }} {{- else }} {{ $ports = mustAppend $ports (dict "name" "web" "port" .Values.webUIPort "targetPort" .Values.webUIPort) }} {{ $ports = mustAppend $ports (dict "name" "udp" "port" .Values.wgUDPPort "targetPort" .Values.wgUDPPort "protocol" "UDP") }} {{- end }} {{ $params := . }} {{- if not .Values.hostNetwork }} {{ $_ := set $params "commonService" (dict "type" "NodePort" "ports" $ports ) }} {{- else }} {{ $_ := set $params "commonService" (dict "type" "ClusterIP" "ports" $ports ) }} {{- end }} {{ $_1 := set .Values "extraSelectorLabels" $selectors }} {{ include "common.classes.service" $params }}