Deprecate old containers without TerminationMessagePath label

This commit is contained in:
Lantao Liu
2015-11-12 15:30:14 -08:00
parent 54e6db0896
commit 1018d32d4f

View File

@@ -338,8 +338,7 @@ func (dm *DockerManager) determineContainerIP(podNamespace, podName string, cont
return result return result
} }
// TODO (random-liu) Remove parameter tPath when old containers are deprecated. func (dm *DockerManager) inspectContainer(dockerID, containerName string, pod *api.Pod) *containerStatusResult {
func (dm *DockerManager) inspectContainer(dockerID, containerName, tPath string, pod *api.Pod) *containerStatusResult {
result := containerStatusResult{api.ContainerStatus{}, "", nil} result := containerStatusResult{api.ContainerStatus{}, "", nil}
inspectResult, err := dm.client.InspectContainer(dockerID) inspectResult, err := dm.client.InspectContainer(dockerID)
@@ -410,11 +409,6 @@ func (dm *DockerManager) inspectContainer(dockerID, containerName, tPath string,
ContainerID: DockerPrefix + dockerID, ContainerID: DockerPrefix + dockerID,
} }
terminationMessagePath := getTerminationMessagePathFromLabel(inspectResult.Config.Labels) terminationMessagePath := getTerminationMessagePathFromLabel(inspectResult.Config.Labels)
if terminationMessagePath == "" {
// Because old containers have no terminationMessagePath Label, we stil have to rely on the information from apiserver here.
// TODO (random-liu) Remove this later when old containers with no labels are deprecated.
terminationMessagePath = tPath
}
if terminationMessagePath != "" { if terminationMessagePath != "" {
path, found := inspectResult.Volumes[terminationMessagePath] path, found := inspectResult.Volumes[terminationMessagePath]
if found { if found {
@@ -484,17 +478,16 @@ func (dm *DockerManager) GetPodStatus(pod *api.Pod) (*api.PodStatus, error) {
continue continue
} }
dockerContainerName := dockerName.ContainerName dockerContainerName := dockerName.ContainerName
c, found := expectedContainers[dockerContainerName] _, found := expectedContainers[dockerContainerName]
if !found { if !found {
continue continue
} }
terminationMessagePath := c.TerminationMessagePath
if containerDone.Has(dockerContainerName) { if containerDone.Has(dockerContainerName) {
continue continue
} }
// Inspect the container. // Inspect the container.
result := dm.inspectContainer(value.ID, dockerContainerName, terminationMessagePath, pod) result := dm.inspectContainer(value.ID, dockerContainerName, pod)
if result.err != nil { if result.err != nil {
return nil, result.err return nil, result.err
} }