Skip to content

Commit

Permalink
Merge pull request #9537 from rook/mergify/bp/release-1.8/pr-9533
Browse files Browse the repository at this point in the history
rgw: fix startup probe (backport #9533)
  • Loading branch information
mergify[bot] committed Jan 6, 2022
2 parents d294ab6 + 1332d7c commit 43d5b29
Show file tree
Hide file tree
Showing 2 changed files with 54 additions and 12 deletions.
16 changes: 4 additions & 12 deletions pkg/operator/ceph/object/spec.go
Expand Up @@ -420,18 +420,10 @@ func (c *clusterConfig) defaultReadinessProbe() *v1.Probe {
}

func (c *clusterConfig) defaultStartupProbe() *v1.Probe {
return &v1.Probe{
Handler: v1.Handler{
HTTPGet: &v1.HTTPGetAction{
Path: readinessProbePath,
Port: c.generateProbePort(),
Scheme: c.generateReadinessProbeScheme(),
},
},
InitialDelaySeconds: 10,
PeriodSeconds: 10,
FailureThreshold: 18,
}
probe := c.defaultLivenessProbe()
probe.PeriodSeconds = 10
probe.FailureThreshold = 18
return probe
}

func (c *clusterConfig) generateReadinessProbeScheme() v1.URIScheme {
Expand Down
50 changes: 50 additions & 0 deletions pkg/operator/ceph/object/spec_test.go
Expand Up @@ -333,6 +333,56 @@ func TestDefaultLivenessProbe(t *testing.T) {
assert.Equal(t, desiredProbe, p)
}

func TestDefaultStartupProbe(t *testing.T) {
store := simpleStore()
c := &clusterConfig{
store: store,
clusterSpec: &cephv1.ClusterSpec{
Network: cephv1.NetworkSpec{
HostNetwork: false,
},
},
}

desiredProbe := &v1.Probe{
Handler: v1.Handler{
TCPSocket: &v1.TCPSocketAction{
Port: intstr.FromInt(8080),
},
},
InitialDelaySeconds: 10,
PeriodSeconds: 10,
FailureThreshold: 18,
}
// No SSL - HostNetwork is disabled - using internal port
p := c.defaultStartupProbe()
assert.Equal(t, desiredProbe, p)

// No SSL - HostNetwork is enabled
c.store.Spec.Gateway.Port = 123
c.store.Spec.Gateway.SecurePort = 0
c.clusterSpec.Network.HostNetwork = true
p = c.defaultStartupProbe()
desiredProbe.Handler.TCPSocket.Port = intstr.FromInt(123)
assert.Equal(t, desiredProbe, p)

// SSL - HostNetwork is enabled
c.store.Spec.Gateway.Port = 0
c.store.Spec.Gateway.SecurePort = 321
c.store.Spec.Gateway.SSLCertificateRef = "foo"
p = c.defaultStartupProbe()
desiredProbe.Handler.TCPSocket.Port = intstr.FromInt(321)
assert.Equal(t, desiredProbe, p)

// Both Non-SSL and SSL are enabled
// livenessProbe just on Non-SSL
c.store.Spec.Gateway.Port = 123
c.store.Spec.Gateway.SecurePort = 321
p = c.defaultStartupProbe()
desiredProbe.Handler.TCPSocket.Port = intstr.FromInt(123)
assert.Equal(t, desiredProbe, p)
}

func TestDefaultReadinessProbe(t *testing.T) {
store := simpleStore()
c := &clusterConfig{
Expand Down

0 comments on commit 43d5b29

Please sign in to comment.