Files
2025-07-23 20:28:40 -04:00

36 lines
1.3 KiB
YAML

{{- range $processName, $config := .Values.processes }}
{{- if not (hasKey $config "web") }}
# Skip {{ $processName }} as it doesn't have a web section
{{- continue }}
{{- end }}
---
apiVersion: v1
kind: Service
metadata:
annotations:
dokku.com/managed: "true"
{{ include "print.annotations" (dict "config" $.Values.global "key" "service") | indent 4 }}
{{ include "print.annotations" (dict "config" $config "key" "service") | indent 4 }}
labels:
app.kubernetes.io/instance: {{ $.Values.global.app_name }}-{{ $processName }}
app.kubernetes.io/name: {{ $processName }}
app.kubernetes.io/part-of: {{ $.Values.global.app_name }}
{{ include "print.labels" (dict "config" $.Values.global "key" "service") | indent 4 }}
{{ include "print.labels" (dict "config" $config "key" "service") | indent 4 }}
name: {{ $.Values.global.app_name }}-{{ $processName }}
namespace: {{ $.Values.global.namespace }}
spec:
ports:
{{- range $pdx, $port_map := $config.web.port_maps }}
- name: {{ $port_map.name }}
port: {{ $port_map.host_port }}
protocol: TCP
targetPort: {{ $port_map.container_port }}
{{- end }}
selector:
app.kubernetes.io/instance: {{ $.Values.global.app_name }}-{{ $processName }}
app.kubernetes.io/name: {{ $processName }}
app.kubernetes.io/part-of: {{ $.Values.global.app_name }}
{{- end }}