Commit 1c148d5d authored by Dominic Watson's avatar Dominic Watson
Browse files

feat: add readiness and liveness probe port support

parent 7ce71568
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
apiVersion: v1
description: GitLab's Auto-deploy Helm Chart
name: auto-deploy-app
version: 2.8.0
version: 2.9.0
icon: https://gitlab.com/gitlab-com/gitlab-artwork/raw/master/logo/logo-square.png
+4 −4
Original line number Diff line number Diff line
@@ -98,10 +98,10 @@ spec:
          httpGet:
            path: {{ .Values.livenessProbe.path }}
            scheme: {{ .Values.livenessProbe.scheme }}
            port: {{ .Values.service.internalPort }}
            port: {{ .Values.livenessProbe.port | default .Values.service.internalPort }}
{{- else if eq .Values.livenessProbe.probeType "tcpSocket" }}
          tcpSocket:
            port: {{ .Values.service.internalPort }}
            port: {{ .Values.livenessProbe.port | default .Values.service.internalPort }}
{{- else if eq .Values.livenessProbe.probeType "exec" }}
          exec:
            command:
@@ -114,10 +114,10 @@ spec:
          httpGet:
            path: {{ .Values.readinessProbe.path }}
            scheme: {{ .Values.readinessProbe.scheme }}
            port: {{ .Values.service.internalPort }}
            port: {{ .Values.readinessProbe.port | default .Values.service.internalPort }}
{{- else if eq .Values.readinessProbe.probeType "tcpSocket" }}
          tcpSocket:
            port: {{ .Values.service.internalPort }}
            port: {{ .Values.readinessProbe.port | default .Values.service.internalPort }}
{{- else if eq .Values.readinessProbe.probeType "exec" }}
          exec:
            command:
+4 −4
Original line number Diff line number Diff line
@@ -87,10 +87,10 @@ items:
            httpGet:
              path: {{ $livenessProbeConfig.path }}
              scheme: {{ $livenessProbeConfig.scheme }}
              port: {{ $.Values.service.internalPort }}
              port: {{ $livenessProbeConfig.port | default $.Values.service.internalPort }}
{{- else if eq $livenessProbeConfig.probeType "tcpSocket" }}
            tcpSocket:
              port: {{ $.Values.service.internalPort }}
              port: {{ $livenessProbeConfig.port | default $.Values.service.internalPort }}
{{- else if eq $livenessProbeConfig.probeType "exec" }}
            exec:
              command:
@@ -107,10 +107,10 @@ items:
            httpGet:
              path: {{ $readinessProbeConfig.path }}
              scheme: {{ $readinessProbeConfig.scheme }}
              port: {{ $.Values.service.internalPort }}
              port: {{ $readinessProbeConfig.port | default $.Values.service.internalPort }}
{{- else if eq $readinessProbeConfig.probeType "tcpSocket" }}
            tcpSocket:
              port: {{ $.Values.service.internalPort }}
              port: {{ $readinessProbeConfig.port | default $.Values.service.internalPort }}
{{- else if eq $readinessProbeConfig.probeType "exec" }}
            exec:
              command:
+50 −11
Original line number Diff line number Diff line
@@ -12,6 +12,7 @@ import (
	appsV1 "k8s.io/api/apps/v1"
	coreV1 "k8s.io/api/core/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	"k8s.io/apimachinery/pkg/util/intstr"
)

func TestDeploymentTemplate(t *testing.T) {
@@ -287,6 +288,44 @@ func TestDeploymentTemplate(t *testing.T) {
			ExpectedLivenessProbe:  defaultLivenessProbe(),
			ExpectedReadinessProbe: defaultReadinessProbe(),
		},
		{
			CaseName: "custom liveness probe",
			Release:  "production",
			Values: map[string]string{
				"livenessProbe.port": "1234",
			},
			ExpectedLivenessProbe: &coreV1.Probe{
				Handler: coreV1.Handler{
					HTTPGet: &coreV1.HTTPGetAction{
						Path:   "/",
						Port:   intstr.FromInt(1234),
						Scheme: coreV1.URISchemeHTTP,
					},
				},
				InitialDelaySeconds: 15,
				TimeoutSeconds:      15,
			},
			ExpectedReadinessProbe: defaultReadinessProbe(),
		},
		{
			CaseName: "custom readiness probe",
			Release:  "production",
			Values: map[string]string{
				"readinessProbe.port": "2345",
			},
			ExpectedLivenessProbe: defaultLivenessProbe(),
			ExpectedReadinessProbe: &coreV1.Probe{
				Handler: coreV1.Handler{
					HTTPGet: &coreV1.HTTPGetAction{
						Path:   "/",
						Port:   intstr.FromInt(2345),
						Scheme: coreV1.URISchemeHTTP,
					},
				},
				InitialDelaySeconds: 5,
				TimeoutSeconds:      3,
			},
		},
	} {
		t.Run(tc.CaseName, func(t *testing.T) {
			namespaceName := "minimal-ruby-app-" + strings.ToLower(random.UniqueId())
+1 −1
Original line number Diff line number Diff line
@@ -13,7 +13,7 @@ import (
)

const (
	chartName     = "auto-deploy-app-2.8.0"
	chartName     = "auto-deploy-app-2.9.0"
	helmChartPath = "../.."
)