Supporting a list of ports

This commit is contained in:
Laszlo Fogas
2021-04-28 10:21:53 +02:00
parent a274eacba2
commit 5012c4ae5d
4 changed files with 94 additions and 21 deletions
+6 -2
View File
@@ -54,12 +54,16 @@ spec:
{{- end }} {{- end }}
{{- end }} {{- end }}
ports: ports:
{{- if not .Values.containerPortYaml }} {{- if not .Values.ports }}
- name: http - name: http
containerPort: {{ .Values.containerPort }} containerPort: {{ .Values.containerPort }}
protocol: TCP protocol: TCP
{{ else }} {{ else }}
{{- toYaml .Values.containerPortYaml | nindent 12 }} {{- range .Values.ports }}
- name: {{ .name }}
containerPort: {{ .containerPort }}
protocol: TCP
{{- end }}
{{- end }} {{- end }}
{{- if .Values.probe.enabled }} {{- if .Values.probe.enabled }}
readinessProbe: readinessProbe:
+12
View File
@@ -8,6 +8,7 @@ metadata:
spec: spec:
type: {{ if .Values.nodePortEnabled }}NodePort{{ else }}ClusterIP{{ end }} type: {{ if .Values.nodePortEnabled }}NodePort{{ else }}ClusterIP{{ end }}
ports: ports:
{{- if not .Values.ports }}
- port: {{ if .Values.svcPort }}{{ .Values.svcPort }}{{ else }}{{ .Values.containerPort }}{{ end }} - port: {{ if .Values.svcPort }}{{ .Values.svcPort }}{{ else }}{{ .Values.containerPort }}{{ end }}
targetPort: http targetPort: http
protocol: TCP protocol: TCP
@@ -15,5 +16,16 @@ spec:
{{- if .Values.nodePort }} {{- if .Values.nodePort }}
nodePort: {{ .Values.nodePort }} nodePort: {{ .Values.nodePort }}
{{- end }} {{- end }}
{{ else }}
{{- range .Values.ports }}
- name: {{ .name }}
port: {{ if .svcPort }}{{ .svcPort }}{{ else }}{{ .containerPort }}{{ end }}
{{- if .nodePort }}
nodePort: {{ .nodePort }}
{{- end }}
targetPort: {{ .name }}
protocol: TCP
{{- end }}
{{- end }}
selector: selector:
{{- include "helm-chart.selectorLabels" . | nindent 4 }} {{- include "helm-chart.selectorLabels" . | nindent 4 }}
@@ -5,35 +5,26 @@ templates:
tests: tests:
- it: Should set custom ports - it: Should set custom ports
set: set:
containerPortYaml: ports:
- port: 21 - containerPort: 21
targetPort: ftp
protocol: TCP
name: ftp name: ftp
- port: 3001 - containerPort: 3001
targetPort: passive-1
protocol: TCP
name: passive-1 name: passive-1
- port: 3002 - containerPort: 3002
targetPort: passive-2
protocol: TCP
name: passive-2 name: passive-2
asserts: asserts:
- equal: - equal:
path: spec.template.spec.containers[0].ports path: spec.template.spec.containers[0].ports
value: value:
- port: 21 - name: ftp
targetPort: ftp containerPort: 21
protocol: TCP protocol: TCP
name: ftp - name: passive-1
- port: 3001 containerPort: 3001
targetPort: passive-1
protocol: TCP protocol: TCP
name: passive-1 - name: passive-2
- port: 3002 containerPort: 3002
targetPort: passive-2
protocol: TCP protocol: TCP
name: passive-2
- it: Should set default port - it: Should set default port
asserts: asserts:
- equal: - equal:
@@ -0,0 +1,66 @@
suite: test deployment
templates:
- service.yaml
tests:
- it: Should set custom ports
set:
ports:
- containerPort: 21
name: ftp
- containerPort: 3001
name: passive-1
- containerPort: 3002
name: passive-2
asserts:
- equal:
path: spec.ports
value:
- name: ftp
port: 21
targetPort: ftp
protocol: TCP
- name: passive-1
port: 3001
targetPort: passive-1
protocol: TCP
- name: passive-2
port: 3002
targetPort: passive-2
protocol: TCP
- it: Should set custom svc port
set:
ports:
- containerPort: 2021
svcPort: 21
name: ftp
- containerPort: 3001
nodePort: 33001
name: passive-1
- containerPort: 3002
name: passive-2
asserts:
- equal:
path: spec.ports
value:
- name: ftp
port: 21
targetPort: ftp
protocol: TCP
- name: passive-1
port: 3001
nodePort: 33001
targetPort: passive-1
protocol: TCP
- name: passive-2
port: 3002
targetPort: passive-2
protocol: TCP
- it: Should set default port
asserts:
- equal:
path: spec.ports
value:
- port: 80
targetPort: http
protocol: TCP
name: http