feat(helm): allow to configure exposed app container port

Signed-off-by: Pascal Sthamer <10992664+P4sca1@users.noreply.github.com>
This commit is contained in:
Pascal Sthamer
2025-04-17 12:06:59 +02:00
parent 3491ba6471
commit e4a42128e7
5 changed files with 20 additions and 6 deletions
@@ -510,6 +510,7 @@ The password should be provided with the `SHUFFLE_OPENSEARCH_PASSWORD` env varia
| `app.networkPolicy.allowExternalEgress` | Allow the pod to access any range of port and all destinations. | `true` | | `app.networkPolicy.allowExternalEgress` | Allow the pod to access any range of port and all destinations. | `true` |
| `app.networkPolicy.extraIngress` | Add extra ingress rules to the NetworkPolicy | `[]` | | `app.networkPolicy.extraIngress` | Add extra ingress rules to the NetworkPolicy | `[]` |
| `app.networkPolicy.extraEgress` | Add extra ingress rules to the NetworkPolicy (ignored if allowExternalEgress=true) | `[]` | | `app.networkPolicy.extraEgress` | Add extra ingress rules to the NetworkPolicy (ignored if allowExternalEgress=true) | `[]` |
| `app.exposedContainerPort` | The port that shuffle app containers will listen on for new requests. | `80` |
### Traffic Exposure Parameters ### Traffic Exposure Parameters
@@ -607,3 +608,4 @@ The password should be provided with the `SHUFFLE_OPENSEARCH_PASSWORD` env varia
### Other Parameters ### Other Parameters
@@ -88,6 +88,8 @@ spec:
value: "true" value: "true"
- name: SHUFFLE_WORKER_SERVICE_ACCOUNT_NAME - name: SHUFFLE_WORKER_SERVICE_ACCOUNT_NAME
value: {{ include "shuffle.worker.serviceAccount.name" . }} value: {{ include "shuffle.worker.serviceAccount.name" . }}
- name: SHUFFLE_APP_EXPOSED_PORT
value: {{ .Values.app.exposedContainerPort | quote }}
- name: SHUFFLE_APP_SERVICE_ACCOUNT_NAME - name: SHUFFLE_APP_SERVICE_ACCOUNT_NAME
value: {{ include "shuffle.app.serviceAccount.name" . }} value: {{ include "shuffle.app.serviceAccount.name" . }}
{{- if .Values.orborus.extraEnvVars }} {{- if .Values.orborus.extraEnvVars }}
@@ -44,17 +44,18 @@ spec:
{{- end }} {{- end }}
{{- end }} {{- end }}
ingress: ingress:
{{- if .Values.app.networkPolicy.allowExternal }} - ports:
- {} - port: {{ .Values.app.exposedContainerPort }}
{{- else }} protocol: TCP
# Allow access from workers. Apps will typicaly use port 80/TCP, but this is not enforced. {{- if not .Values.app.networkPolicy.allowExternal }}
- from: # Allow traffic from workers
from:
- namespaceSelector: - namespaceSelector:
matchLabels: matchLabels:
kubernetes.io/metadata.name: {{ .Release.Namespace }} kubernetes.io/metadata.name: {{ .Release.Namespace }}
podSelector: podSelector:
matchLabels: {{ include "shuffle.worker.matchLabels" . | nindent 14 }} matchLabels: {{ include "shuffle.worker.matchLabels" . | nindent 14 }}
{{- end }} {{- end }}
{{- if .Values.app.networkPolicy.extraIngress }} {{- if .Values.app.networkPolicy.extraIngress }}
{{- include "common.tplvalues.render" ( dict "value" .Values.app.networkPolicy.extraIngress "context" $ ) | nindent 4 }} {{- include "common.tplvalues.render" ( dict "value" .Values.app.networkPolicy.extraIngress "context" $ ) | nindent 4 }}
{{- end }} {{- end }}
@@ -2224,6 +2224,11 @@
"items": {} "items": {}
} }
} }
},
"exposedContainerPort": {
"type": "number",
"description": "The port that shuffle app containers will listen on for new requests. ",
"default": 80
} }
} }
}, },
@@ -1449,6 +1449,10 @@ app:
## ##
extraEgress: [] extraEgress: []
## @param app.exposedContainerPort The port that shuffle app containers will listen on for new requests.
##
exposedContainerPort: 80
## @section Traffic Exposure Parameters ## @section Traffic Exposure Parameters
## ##