Merge pull request #8923 from caesarxuchao/TerminationToTerminated
Update ContainerState.Termination to ContainerState.Terminated
This commit is contained in:
@@ -57,7 +57,7 @@ func ShouldContainerBeRestarted(container *api.Container, pod *api.Pod, podStatu
|
||||
// Get all dead container status.
|
||||
var resultStatus []*api.ContainerStatus
|
||||
for i, containerStatus := range podStatus.ContainerStatuses {
|
||||
if containerStatus.Name == container.Name && containerStatus.State.Termination != nil {
|
||||
if containerStatus.Name == container.Name && containerStatus.State.Terminated != nil {
|
||||
resultStatus = append(resultStatus, &podStatus.ContainerStatuses[i])
|
||||
}
|
||||
}
|
||||
@@ -76,7 +76,7 @@ func ShouldContainerBeRestarted(container *api.Container, pod *api.Pod, podStatu
|
||||
if pod.Spec.RestartPolicy == api.RestartPolicyOnFailure {
|
||||
// Check the exit code of last run. Note: This assumes the result is sorted
|
||||
// by the created time in reverse order.
|
||||
if resultStatus[0].State.Termination.ExitCode == 0 {
|
||||
if resultStatus[0].State.Terminated.ExitCode == 0 {
|
||||
glog.V(4).Infof("Already successfully ran container %q of pod %q, do nothing", container.Name, podFullName)
|
||||
return false
|
||||
}
|
||||
|
@@ -290,7 +290,7 @@ func (dm *DockerManager) inspectContainer(dockerID, containerName, tPath string)
|
||||
} else {
|
||||
reason = inspectResult.State.Error
|
||||
}
|
||||
result.status.State.Termination = &api.ContainerStateTerminated{
|
||||
result.status.State.Terminated = &api.ContainerStateTerminated{
|
||||
ExitCode: inspectResult.State.ExitCode,
|
||||
Reason: reason,
|
||||
StartedAt: util.NewTime(inspectResult.State.StartedAt),
|
||||
@@ -304,7 +304,7 @@ func (dm *DockerManager) inspectContainer(dockerID, containerName, tPath string)
|
||||
if err != nil {
|
||||
glog.Errorf("Error on reading termination-log %s: %v", path, err)
|
||||
} else {
|
||||
result.status.State.Termination.Message = string(data)
|
||||
result.status.State.Terminated.Message = string(data)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -329,8 +329,8 @@ func (dm *DockerManager) GetPodStatus(pod *api.Pod) (*api.PodStatus, error) {
|
||||
lastObservedTime := make(map[string]util.Time, len(pod.Spec.Containers))
|
||||
for _, status := range pod.Status.ContainerStatuses {
|
||||
oldStatuses[status.Name] = status
|
||||
if status.LastTerminationState.Termination != nil {
|
||||
lastObservedTime[status.Name] = status.LastTerminationState.Termination.FinishedAt
|
||||
if status.LastTerminationState.Terminated != nil {
|
||||
lastObservedTime[status.Name] = status.LastTerminationState.Terminated.FinishedAt
|
||||
}
|
||||
}
|
||||
|
||||
@@ -381,19 +381,19 @@ func (dm *DockerManager) GetPodStatus(pod *api.Pod) (*api.PodStatus, error) {
|
||||
result := dm.inspectContainer(value.ID, dockerContainerName, terminationMessagePath)
|
||||
if result.err != nil {
|
||||
return nil, result.err
|
||||
} else if result.status.State.Termination != nil {
|
||||
} else if result.status.State.Terminated != nil {
|
||||
terminationState = &result.status.State
|
||||
}
|
||||
|
||||
if containerStatus, found := statuses[dockerContainerName]; found {
|
||||
if containerStatus.LastTerminationState.Termination == nil && terminationState != nil {
|
||||
if containerStatus.LastTerminationState.Terminated == nil && terminationState != nil {
|
||||
// Populate the last termination state.
|
||||
containerStatus.LastTerminationState = *terminationState
|
||||
}
|
||||
count := true
|
||||
// Only count dead containers terminated after last time we observed,
|
||||
if lastObservedTime, ok := lastObservedTime[dockerContainerName]; ok {
|
||||
if terminationState != nil && terminationState.Termination.FinishedAt.After(lastObservedTime.Time) {
|
||||
if terminationState != nil && terminationState.Terminated.FinishedAt.After(lastObservedTime.Time) {
|
||||
count = false
|
||||
} else {
|
||||
// The container finished before the last observation. No
|
||||
|
@@ -1567,8 +1567,8 @@ func TestGetPodStatusWithLastTermination(t *testing.T) {
|
||||
}
|
||||
terminatedContainers := []string{}
|
||||
for _, cs := range status.ContainerStatuses {
|
||||
if cs.LastTerminationState.Termination != nil {
|
||||
terminatedContainers = append(terminatedContainers, cs.LastTerminationState.Termination.ContainerID)
|
||||
if cs.LastTerminationState.Terminated != nil {
|
||||
terminatedContainers = append(terminatedContainers, cs.LastTerminationState.Terminated.ContainerID)
|
||||
}
|
||||
}
|
||||
sort.StringSlice(terminatedContainers).Sort()
|
||||
|
@@ -1668,10 +1668,10 @@ func (kl *Kubelet) validateContainerStatus(podStatus *api.PodStatus, containerNa
|
||||
return "", fmt.Errorf("container %q not found in pod", containerName)
|
||||
}
|
||||
if previous {
|
||||
if cStatus.LastTerminationState.Termination == nil {
|
||||
if cStatus.LastTerminationState.Terminated == nil {
|
||||
return "", fmt.Errorf("previous terminated container %q not found in pod", containerName)
|
||||
}
|
||||
cID = cStatus.LastTerminationState.Termination.ContainerID
|
||||
cID = cStatus.LastTerminationState.Terminated.ContainerID
|
||||
} else {
|
||||
if cStatus.State.Waiting != nil {
|
||||
return "", fmt.Errorf("container %q is in waiting state.", containerName)
|
||||
@@ -1983,9 +1983,9 @@ func getPhase(spec *api.PodSpec, info []api.ContainerStatus) api.PodPhase {
|
||||
if containerStatus, ok := api.GetContainerStatus(info, container.Name); ok {
|
||||
if containerStatus.State.Running != nil {
|
||||
running++
|
||||
} else if containerStatus.State.Termination != nil {
|
||||
} else if containerStatus.State.Terminated != nil {
|
||||
stopped++
|
||||
if containerStatus.State.Termination.ExitCode == 0 {
|
||||
if containerStatus.State.Terminated.ExitCode == 0 {
|
||||
succeeded++
|
||||
} else {
|
||||
failed++
|
||||
|
@@ -1712,7 +1712,7 @@ func stoppedState(cName string) api.ContainerStatus {
|
||||
return api.ContainerStatus{
|
||||
Name: cName,
|
||||
State: api.ContainerState{
|
||||
Termination: &api.ContainerStateTerminated{},
|
||||
Terminated: &api.ContainerStateTerminated{},
|
||||
},
|
||||
}
|
||||
}
|
||||
@@ -1720,7 +1720,7 @@ func succeededState(cName string) api.ContainerStatus {
|
||||
return api.ContainerStatus{
|
||||
Name: cName,
|
||||
State: api.ContainerState{
|
||||
Termination: &api.ContainerStateTerminated{
|
||||
Terminated: &api.ContainerStateTerminated{
|
||||
ExitCode: 0,
|
||||
},
|
||||
},
|
||||
@@ -1730,7 +1730,7 @@ func failedState(cName string) api.ContainerStatus {
|
||||
return api.ContainerStatus{
|
||||
Name: cName,
|
||||
State: api.ContainerState{
|
||||
Termination: &api.ContainerStateTerminated{
|
||||
Terminated: &api.ContainerStateTerminated{
|
||||
ExitCode: -1,
|
||||
},
|
||||
},
|
||||
@@ -2577,7 +2577,7 @@ func TestValidateContainerStatus(t *testing.T) {
|
||||
Running: &api.ContainerStateRunning{},
|
||||
},
|
||||
LastTerminationState: api.ContainerState{
|
||||
Termination: &api.ContainerStateTerminated{},
|
||||
Terminated: &api.ContainerStateTerminated{},
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -2588,7 +2588,7 @@ func TestValidateContainerStatus(t *testing.T) {
|
||||
{
|
||||
Name: containerName,
|
||||
State: api.ContainerState{
|
||||
Termination: &api.ContainerStateTerminated{},
|
||||
Terminated: &api.ContainerStateTerminated{},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@@ -136,7 +136,7 @@ func (p *podInfo) getContainerStatus(container *kubecontainer.Container) api.Con
|
||||
}
|
||||
exitCode = -1
|
||||
status.State = api.ContainerState{
|
||||
Termination: &api.ContainerStateTerminated{
|
||||
Terminated: &api.ContainerStateTerminated{
|
||||
ExitCode: exitCode,
|
||||
StartedAt: util.Unix(container.Created, 0),
|
||||
},
|
||||
|
Reference in New Issue
Block a user