Skip to content

Commit 2c0e35e

Browse files
authored
Added function for startup probe (#397)
1 parent f42cf1f commit 2c0e35e

File tree

2 files changed

+24
-2
lines changed

2 files changed

+24
-2
lines changed

pkg/kube/container/container_test.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,13 @@ func TestContainer(t *testing.T) {
3737
probes.WithFailureThreshold(15),
3838
probes.WithPeriodSeconds(10),
3939
)),
40+
WithStartupProbe(
41+
probes.Apply(
42+
probes.WithExecCommand([]string{"startup-exec"}),
43+
probes.WithFailureThreshold(20),
44+
probes.WithPeriodSeconds(30),
45+
),
46+
),
4047
WithResourceRequirements(resourcerequirements.Defaults()),
4148
WithCommand([]string{"container-cmd"}),
4249
WithEnvs(
@@ -71,6 +78,11 @@ func TestContainer(t *testing.T) {
7178
assert.Equal(t, int32(10), liveNessProbe.PeriodSeconds)
7279
assert.Equal(t, "liveness-exec", liveNessProbe.Exec.Command[0])
7380

81+
startupProbe := c.StartupProbe
82+
assert.Equal(t, int32(20), startupProbe.FailureThreshold)
83+
assert.Equal(t, int32(30), startupProbe.PeriodSeconds)
84+
assert.Equal(t, "startup-exec", startupProbe.Exec.Command[0])
85+
7486
assert.Equal(t, c.Resources, resourcerequirements.Defaults())
7587

7688
assert.Len(t, c.Command, 1)

pkg/kube/container/containers.go

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,12 +75,22 @@ func WithReadinessProbe(probeFunc func(*corev1.Probe)) Modification {
7575
}
7676

7777
// WithLivenessProbe modifies the container's Liveness Probe
78-
func WithLivenessProbe(readinessProbeFunc func(*corev1.Probe)) Modification {
78+
func WithLivenessProbe(livenessProbeFunc func(*corev1.Probe)) Modification {
7979
return func(container *corev1.Container) {
8080
if container.LivenessProbe == nil {
8181
container.LivenessProbe = &corev1.Probe{}
8282
}
83-
readinessProbeFunc(container.LivenessProbe)
83+
livenessProbeFunc(container.LivenessProbe)
84+
}
85+
}
86+
87+
// WithStartupProbe modifies the container's Startup Probe
88+
func WithStartupProbe(startupProbeFunc func(*corev1.Probe)) Modification {
89+
return func(container *corev1.Container) {
90+
if container.StartupProbe == nil {
91+
container.StartupProbe = &corev1.Probe{}
92+
}
93+
startupProbeFunc(container.StartupProbe)
8494
}
8595
}
8696

0 commit comments

Comments
 (0)