mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-01 07:47:56 +00:00
Sort init container statuses using non-nested loop
This commit is contained in:
parent
9ddc9ccc57
commit
3f043dd8a0
@ -1545,18 +1545,17 @@ func (kl *Kubelet) convertToAPIContainerStatuses(pod *v1.Pod, podStatus *kubecon
|
||||
statuses[container.Name] = status
|
||||
}
|
||||
|
||||
// Sort the container statuses since clients of this interface expect the list
|
||||
// of containers in a pod has a deterministic order.
|
||||
if isInitContainer {
|
||||
return kubetypes.SortStatusesOfInitContainers(pod, statuses)
|
||||
}
|
||||
var containerStatuses []v1.ContainerStatus
|
||||
for _, status := range statuses {
|
||||
containerStatuses = append(containerStatuses, *status)
|
||||
}
|
||||
|
||||
// Sort the container statuses since clients of this interface expect the list
|
||||
// of containers in a pod has a deterministic order.
|
||||
if isInitContainer {
|
||||
kubetypes.SortInitContainerStatuses(pod, containerStatuses)
|
||||
} else {
|
||||
sort.Sort(kubetypes.SortedContainerStatuses(containerStatuses))
|
||||
}
|
||||
sort.Sort(kubetypes.SortedContainerStatuses(containerStatuses))
|
||||
return containerStatuses
|
||||
}
|
||||
|
||||
|
@ -85,6 +85,17 @@ func SortInitContainerStatuses(p *v1.Pod, statuses []v1.ContainerStatus) {
|
||||
}
|
||||
}
|
||||
|
||||
func SortStatusesOfInitContainers(p *v1.Pod, statusMap map[string]*v1.ContainerStatus) []v1.ContainerStatus {
|
||||
containers := p.Spec.InitContainers
|
||||
statuses := []v1.ContainerStatus{}
|
||||
for _, container := range containers {
|
||||
if status, found := statusMap[container.Name]; found {
|
||||
statuses = append(statuses, *status)
|
||||
}
|
||||
}
|
||||
return statuses
|
||||
}
|
||||
|
||||
// Reservation represents reserved resources for non-pod components.
|
||||
type Reservation struct {
|
||||
// System represents resources reserved for non-kubernetes components.
|
||||
|
Loading…
Reference in New Issue
Block a user