Commit 928971ce authored by Abhi Shah's avatar Abhi Shah

Merge pull request #9710 from mesosphere/public-get-phase

export kubelet.GetPhase
parents f39f2f04 3cf7739b
...@@ -1991,8 +1991,10 @@ func (kl *Kubelet) tryUpdateNodeStatus() error { ...@@ -1991,8 +1991,10 @@ func (kl *Kubelet) tryUpdateNodeStatus() error {
return err return err
} }
// getPhase returns the phase of a pod given its container info. // GetPhase returns the phase of a pod given its container info.
func getPhase(spec *api.PodSpec, info []api.ContainerStatus) api.PodPhase { // This func is exported to simplify integration with 3rd party kubelet
// integrations like kubernetes-mesos.
func GetPhase(spec *api.PodSpec, info []api.ContainerStatus) api.PodPhase {
running := 0 running := 0
waiting := 0 waiting := 0
stopped := 0 stopped := 0
...@@ -2111,7 +2113,7 @@ func (kl *Kubelet) generatePodStatus(pod *api.Pod) (api.PodStatus, error) { ...@@ -2111,7 +2113,7 @@ func (kl *Kubelet) generatePodStatus(pod *api.Pod) (api.PodStatus, error) {
} }
// Assume info is ready to process // Assume info is ready to process
podStatus.Phase = getPhase(spec, podStatus.ContainerStatuses) podStatus.Phase = GetPhase(spec, podStatus.ContainerStatuses)
for _, c := range spec.Containers { for _, c := range spec.Containers {
for i, st := range podStatus.ContainerStatuses { for i, st := range podStatus.ContainerStatuses {
if st.Name == c.Name { if st.Name == c.Name {
......
...@@ -1656,7 +1656,7 @@ func TestPodPhaseWithRestartAlways(t *testing.T) { ...@@ -1656,7 +1656,7 @@ func TestPodPhaseWithRestartAlways(t *testing.T) {
}, },
} }
for _, test := range tests { for _, test := range tests {
if status := getPhase(&test.pod.Spec, test.pod.Status.ContainerStatuses); status != test.status { if status := GetPhase(&test.pod.Spec, test.pod.Status.ContainerStatuses); status != test.status {
t.Errorf("In test %s, expected %v, got %v", test.test, test.status, status) t.Errorf("In test %s, expected %v, got %v", test.test, test.status, status)
} }
} }
...@@ -1744,7 +1744,7 @@ func TestPodPhaseWithRestartNever(t *testing.T) { ...@@ -1744,7 +1744,7 @@ func TestPodPhaseWithRestartNever(t *testing.T) {
}, },
} }
for _, test := range tests { for _, test := range tests {
if status := getPhase(&test.pod.Spec, test.pod.Status.ContainerStatuses); status != test.status { if status := GetPhase(&test.pod.Spec, test.pod.Status.ContainerStatuses); status != test.status {
t.Errorf("In test %s, expected %v, got %v", test.test, test.status, status) t.Errorf("In test %s, expected %v, got %v", test.test, test.status, status)
} }
} }
...@@ -1832,7 +1832,7 @@ func TestPodPhaseWithRestartOnFailure(t *testing.T) { ...@@ -1832,7 +1832,7 @@ func TestPodPhaseWithRestartOnFailure(t *testing.T) {
}, },
} }
for _, test := range tests { for _, test := range tests {
if status := getPhase(&test.pod.Spec, test.pod.Status.ContainerStatuses); status != test.status { if status := GetPhase(&test.pod.Spec, test.pod.Status.ContainerStatuses); status != test.status {
t.Errorf("In test %s, expected %v, got %v", test.test, test.status, status) t.Errorf("In test %s, expected %v, got %v", test.test, test.status, status)
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment