De-share the Handler struct in core API (#105979)
* De-share the Handler struct in core API An upcoming PR adds a handler that only applies on one of these paths. Having fields that don't work seems bad. This never should have been shared. Lifecycle hooks are like a "write" while probes are more like a "read". HTTPGet and TCPSocket don't really make sense as lifecycle hooks (but I can't take that back). When we add gRPC, it is EXPLICITLY a health check (defined by gRPC) not an arbitrary RPC - so a probe makes sense but a hook does not. In the future I can also see adding lifecycle hooks that don't make sense as probes. E.g. 'sleep' is a common lifecycle request. The only option is `exec`, which requires having a sleep binary in your image. * Run update scripts
This commit is contained in:
@@ -341,7 +341,7 @@ var _ = utils.SIGDescribe("PersistentVolumes", func() {
|
||||
writeCmd += "&& sleep 10000"
|
||||
|
||||
probe := &v1.Probe{
|
||||
Handler: v1.Handler{
|
||||
ProbeHandler: v1.ProbeHandler{
|
||||
Exec: &v1.ExecAction{
|
||||
// Check that the last file got created
|
||||
Command: []string{"test", "-f", getVolumeFile(numVols - 1)},
|
||||
|
||||
@@ -882,7 +882,7 @@ func testPodContainerRestart(f *framework.Framework, pod *v1.Pod) {
|
||||
testPodContainerRestartWithHooks(f, pod, &podContainerRestartHooks{
|
||||
AddLivenessProbeFunc: func(p *v1.Pod, probeFilePath string) {
|
||||
p.Spec.Containers[0].LivenessProbe = &v1.Probe{
|
||||
Handler: v1.Handler{
|
||||
ProbeHandler: v1.ProbeHandler{
|
||||
Exec: &v1.ExecAction{
|
||||
Command: []string{"cat", probeFilePath},
|
||||
},
|
||||
@@ -936,7 +936,7 @@ func TestPodContainerRestartWithConfigmapModified(f *framework.Framework, origin
|
||||
testPodContainerRestartWithHooks(f, pod, &podContainerRestartHooks{
|
||||
AddLivenessProbeFunc: func(p *v1.Pod, probeFilePath string) {
|
||||
p.Spec.Containers[0].LivenessProbe = &v1.Probe{
|
||||
Handler: v1.Handler{
|
||||
ProbeHandler: v1.ProbeHandler{
|
||||
Exec: &v1.ExecAction{
|
||||
// Expect probe file exist or configmap mounted file has been modified.
|
||||
Command: []string{"sh", "-c", fmt.Sprintf("cat %s || test `cat %s` = '%s'", probeFilePath, volumePath, modifiedValue)},
|
||||
|
||||
Reference in New Issue
Block a user