Skip to content

Commit df87982

Browse files
committed
fix: normalize ephemeral container statuses
1 parent 9125473 commit df87982

File tree

1 file changed

+14
-14
lines changed

1 file changed

+14
-14
lines changed

pkg/kubelet/status/status_manager.go

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -993,7 +993,7 @@ func (m *manager) needsReconcile(uid types.UID, status v1.PodStatus) bool {
993993
// Related issue #15262/PR #15263 to move apiserver to RFC339NANO is closed.
994994
func normalizeStatus(pod *v1.Pod, status *v1.PodStatus) *v1.PodStatus {
995995
bytesPerStatus := kubecontainer.MaxPodTerminationMessageLogLength
996-
if containers := len(pod.Spec.Containers) + len(pod.Spec.InitContainers); containers > 0 {
996+
if containers := len(pod.Spec.Containers) + len(pod.Spec.InitContainers) + len(pod.Spec.EphemeralContainers); containers > 0 {
997997
bytesPerStatus = bytesPerStatus / containers
998998
}
999999
normalizeTimeStamp := func(t *metav1.Time) {
@@ -1021,23 +1021,23 @@ func normalizeStatus(pod *v1.Pod, status *v1.PodStatus) *v1.PodStatus {
10211021
normalizeTimeStamp(&condition.LastTransitionTime)
10221022
}
10231023

1024-
// update container statuses
1025-
for i := range status.ContainerStatuses {
1026-
cstatus := &status.ContainerStatuses[i]
1027-
normalizeContainerState(&cstatus.State)
1028-
normalizeContainerState(&cstatus.LastTerminationState)
1024+
normalizeContainerStatuses := func(containerStatuses []v1.ContainerStatus) {
1025+
for i := range containerStatuses {
1026+
cstatus := &containerStatuses[i]
1027+
normalizeContainerState(&cstatus.State)
1028+
normalizeContainerState(&cstatus.LastTerminationState)
1029+
}
10291030
}
1030-
// Sort the container statuses, so that the order won't affect the result of comparison
1031+
1032+
normalizeContainerStatuses(status.ContainerStatuses)
10311033
sort.Sort(kubetypes.SortedContainerStatuses(status.ContainerStatuses))
10321034

1033-
// update init container statuses
1034-
for i := range status.InitContainerStatuses {
1035-
cstatus := &status.InitContainerStatuses[i]
1036-
normalizeContainerState(&cstatus.State)
1037-
normalizeContainerState(&cstatus.LastTerminationState)
1038-
}
1039-
// Sort the container statuses, so that the order won't affect the result of comparison
1035+
normalizeContainerStatuses(status.InitContainerStatuses)
10401036
kubetypes.SortInitContainerStatuses(pod, status.InitContainerStatuses)
1037+
1038+
normalizeContainerStatuses(status.EphemeralContainerStatuses)
1039+
sort.Sort(kubetypes.SortedContainerStatuses(status.EphemeralContainerStatuses))
1040+
10411041
return status
10421042
}
10431043

0 commit comments

Comments
 (0)