mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-03 19:58:17 +00:00 
			
		
		
		
	Merge pull request #8923 from caesarxuchao/TerminationToTerminated
Update ContainerState.Termination to ContainerState.Terminated
This commit is contained in:
		@@ -305,13 +305,13 @@ func deepCopy_api_ContainerState(in ContainerState, out *ContainerState, c *conv
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Running = nil
 | 
			
		||||
	}
 | 
			
		||||
	if in.Termination != nil {
 | 
			
		||||
		out.Termination = new(ContainerStateTerminated)
 | 
			
		||||
		if err := deepCopy_api_ContainerStateTerminated(*in.Termination, out.Termination, c); err != nil {
 | 
			
		||||
	if in.Terminated != nil {
 | 
			
		||||
		out.Terminated = new(ContainerStateTerminated)
 | 
			
		||||
		if err := deepCopy_api_ContainerStateTerminated(*in.Terminated, out.Terminated, c); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Termination = nil
 | 
			
		||||
		out.Terminated = nil
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -740,9 +740,9 @@ type ContainerStateTerminated struct {
 | 
			
		||||
// Only one of its members may be specified.
 | 
			
		||||
// If none of them is specified, the default one is ContainerStateWaiting.
 | 
			
		||||
type ContainerState struct {
 | 
			
		||||
	Waiting     *ContainerStateWaiting    `json:"waiting,omitempty"`
 | 
			
		||||
	Running     *ContainerStateRunning    `json:"running,omitempty"`
 | 
			
		||||
	Termination *ContainerStateTerminated `json:"termination,omitempty"`
 | 
			
		||||
	Waiting    *ContainerStateWaiting    `json:"waiting,omitempty"`
 | 
			
		||||
	Running    *ContainerStateRunning    `json:"running,omitempty"`
 | 
			
		||||
	Terminated *ContainerStateTerminated `json:"terminated,omitempty"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type ContainerStatus struct {
 | 
			
		||||
 
 | 
			
		||||
@@ -257,13 +257,13 @@ func convert_api_ContainerState_To_v1_ContainerState(in *api.ContainerState, out
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Running = nil
 | 
			
		||||
	}
 | 
			
		||||
	if in.Termination != nil {
 | 
			
		||||
		out.Termination = new(ContainerStateTerminated)
 | 
			
		||||
		if err := convert_api_ContainerStateTerminated_To_v1_ContainerStateTerminated(in.Termination, out.Termination, s); err != nil {
 | 
			
		||||
	if in.Terminated != nil {
 | 
			
		||||
		out.Terminated = new(ContainerStateTerminated)
 | 
			
		||||
		if err := convert_api_ContainerStateTerminated_To_v1_ContainerStateTerminated(in.Terminated, out.Terminated, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Termination = nil
 | 
			
		||||
		out.Terminated = nil
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
@@ -2532,13 +2532,13 @@ func convert_v1_ContainerState_To_api_ContainerState(in *ContainerState, out *ap
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Running = nil
 | 
			
		||||
	}
 | 
			
		||||
	if in.Termination != nil {
 | 
			
		||||
		out.Termination = new(api.ContainerStateTerminated)
 | 
			
		||||
		if err := convert_v1_ContainerStateTerminated_To_api_ContainerStateTerminated(in.Termination, out.Termination, s); err != nil {
 | 
			
		||||
	if in.Terminated != nil {
 | 
			
		||||
		out.Terminated = new(api.ContainerStateTerminated)
 | 
			
		||||
		if err := convert_v1_ContainerStateTerminated_To_api_ContainerStateTerminated(in.Terminated, out.Terminated, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Termination = nil
 | 
			
		||||
		out.Terminated = nil
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -246,13 +246,13 @@ func deepCopy_v1_ContainerState(in ContainerState, out *ContainerState, c *conve
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Running = nil
 | 
			
		||||
	}
 | 
			
		||||
	if in.Termination != nil {
 | 
			
		||||
		out.Termination = new(ContainerStateTerminated)
 | 
			
		||||
		if err := deepCopy_v1_ContainerStateTerminated(*in.Termination, out.Termination, c); err != nil {
 | 
			
		||||
	if in.Terminated != nil {
 | 
			
		||||
		out.Terminated = new(ContainerStateTerminated)
 | 
			
		||||
		if err := deepCopy_v1_ContainerStateTerminated(*in.Terminated, out.Terminated, c); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Termination = nil
 | 
			
		||||
		out.Terminated = nil
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -750,9 +750,9 @@ type ContainerStateTerminated struct {
 | 
			
		||||
// Only one of its members may be specified.
 | 
			
		||||
// If none of them is specified, the default one is ContainerStateWaiting.
 | 
			
		||||
type ContainerState struct {
 | 
			
		||||
	Waiting     *ContainerStateWaiting    `json:"waiting,omitempty" description:"details about a waiting container"`
 | 
			
		||||
	Running     *ContainerStateRunning    `json:"running,omitempty" description:"details about a running container"`
 | 
			
		||||
	Termination *ContainerStateTerminated `json:"termination,omitempty" description:"details about a terminated container"`
 | 
			
		||||
	Waiting    *ContainerStateWaiting    `json:"waiting,omitempty" description:"details about a waiting container"`
 | 
			
		||||
	Running    *ContainerStateRunning    `json:"running,omitempty" description:"details about a running container"`
 | 
			
		||||
	Terminated *ContainerStateTerminated `json:"terminated,omitempty" description:"details about a terminated container"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type ContainerStatus struct {
 | 
			
		||||
 
 | 
			
		||||
@@ -1632,6 +1632,30 @@ func addConversionFuncs() {
 | 
			
		||||
			out.SecretName = in.Target.ID
 | 
			
		||||
			return nil
 | 
			
		||||
		},
 | 
			
		||||
		func(in *api.ContainerState, out *ContainerState, s conversion.Scope) error {
 | 
			
		||||
			if err := s.Convert(&in.Waiting, &out.Waiting, 0); err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			if err := s.Convert(&in.Running, &out.Running, 0); err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			if err := s.Convert(&in.Terminated, &out.Termination, 0); err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			return nil
 | 
			
		||||
		},
 | 
			
		||||
		func(in *ContainerState, out *api.ContainerState, s conversion.Scope) error {
 | 
			
		||||
			if err := s.Convert(&in.Waiting, &out.Waiting, 0); err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			if err := s.Convert(&in.Running, &out.Running, 0); err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			if err := s.Convert(&in.Termination, &out.Terminated, 0); err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			return nil
 | 
			
		||||
		},
 | 
			
		||||
	)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		// If one of the conversion functions is malformed, detect it immediately.
 | 
			
		||||
 
 | 
			
		||||
@@ -1547,6 +1547,30 @@ func addConversionFuncs() {
 | 
			
		||||
			out.SecretName = in.Target.ID
 | 
			
		||||
			return nil
 | 
			
		||||
		},
 | 
			
		||||
		func(in *api.ContainerState, out *ContainerState, s conversion.Scope) error {
 | 
			
		||||
			if err := s.Convert(&in.Waiting, &out.Waiting, 0); err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			if err := s.Convert(&in.Running, &out.Running, 0); err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			if err := s.Convert(&in.Terminated, &out.Termination, 0); err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			return nil
 | 
			
		||||
		},
 | 
			
		||||
		func(in *ContainerState, out *api.ContainerState, s conversion.Scope) error {
 | 
			
		||||
			if err := s.Convert(&in.Waiting, &out.Waiting, 0); err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			if err := s.Convert(&in.Running, &out.Running, 0); err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			if err := s.Convert(&in.Termination, &out.Terminated, 0); err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			return nil
 | 
			
		||||
		},
 | 
			
		||||
	)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		// If one of the conversion functions is malformed, detect it immediately.
 | 
			
		||||
 
 | 
			
		||||
@@ -33,6 +33,10 @@ func addConversionFuncs() {
 | 
			
		||||
		convert_api_ServiceSpec_To_v1beta3_ServiceSpec,
 | 
			
		||||
		convert_v1beta3_PodSpec_To_api_PodSpec,
 | 
			
		||||
		convert_api_PodSpec_To_v1beta3_PodSpec,
 | 
			
		||||
		convert_v1beta3_ContainerState_To_api_ContainerState,
 | 
			
		||||
		convert_api_ContainerState_To_v1beta3_ContainerState,
 | 
			
		||||
		convert_api_ContainerStateTerminated_To_v1beta3_ContainerStateTerminated,
 | 
			
		||||
		convert_v1beta3_ContainerStateTerminated_To_api_ContainerStateTerminated,
 | 
			
		||||
	)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		// If one of the conversion functions is malformed, detect it immediately.
 | 
			
		||||
@@ -546,3 +550,101 @@ func convert_api_PodSpec_To_v1beta3_PodSpec(in *api.PodSpec, out *PodSpec, s con
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func convert_api_ContainerState_To_v1beta3_ContainerState(in *api.ContainerState, out *ContainerState, s conversion.Scope) error {
 | 
			
		||||
	if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
 | 
			
		||||
		defaulting.(func(*api.ContainerState))(in)
 | 
			
		||||
	}
 | 
			
		||||
	if in.Waiting != nil {
 | 
			
		||||
		out.Waiting = new(ContainerStateWaiting)
 | 
			
		||||
		if err := convert_api_ContainerStateWaiting_To_v1beta3_ContainerStateWaiting(in.Waiting, out.Waiting, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Waiting = nil
 | 
			
		||||
	}
 | 
			
		||||
	if in.Running != nil {
 | 
			
		||||
		out.Running = new(ContainerStateRunning)
 | 
			
		||||
		if err := convert_api_ContainerStateRunning_To_v1beta3_ContainerStateRunning(in.Running, out.Running, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Running = nil
 | 
			
		||||
	}
 | 
			
		||||
	if in.Terminated != nil {
 | 
			
		||||
		out.Termination = new(ContainerStateTerminated)
 | 
			
		||||
		if err := convert_api_ContainerStateTerminated_To_v1beta3_ContainerStateTerminated(in.Terminated, out.Termination, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Termination = nil
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func convert_v1beta3_ContainerState_To_api_ContainerState(in *ContainerState, out *api.ContainerState, s conversion.Scope) error {
 | 
			
		||||
	if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
 | 
			
		||||
		defaulting.(func(*ContainerState))(in)
 | 
			
		||||
	}
 | 
			
		||||
	if in.Waiting != nil {
 | 
			
		||||
		out.Waiting = new(api.ContainerStateWaiting)
 | 
			
		||||
		if err := convert_v1beta3_ContainerStateWaiting_To_api_ContainerStateWaiting(in.Waiting, out.Waiting, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Waiting = nil
 | 
			
		||||
	}
 | 
			
		||||
	if in.Running != nil {
 | 
			
		||||
		out.Running = new(api.ContainerStateRunning)
 | 
			
		||||
		if err := convert_v1beta3_ContainerStateRunning_To_api_ContainerStateRunning(in.Running, out.Running, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Running = nil
 | 
			
		||||
	}
 | 
			
		||||
	if in.Termination != nil {
 | 
			
		||||
		out.Terminated = new(api.ContainerStateTerminated)
 | 
			
		||||
		if err := convert_v1beta3_ContainerStateTerminated_To_api_ContainerStateTerminated(in.Termination, out.Terminated, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Terminated = nil
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func convert_api_ContainerStateTerminated_To_v1beta3_ContainerStateTerminated(in *api.ContainerStateTerminated, out *ContainerStateTerminated, s conversion.Scope) error {
 | 
			
		||||
	if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
 | 
			
		||||
		defaulting.(func(*api.ContainerStateTerminated))(in)
 | 
			
		||||
	}
 | 
			
		||||
	out.ExitCode = in.ExitCode
 | 
			
		||||
	out.Signal = in.Signal
 | 
			
		||||
	out.Reason = in.Reason
 | 
			
		||||
	out.Message = in.Message
 | 
			
		||||
	if err := s.Convert(&in.StartedAt, &out.StartedAt, 0); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	if err := s.Convert(&in.FinishedAt, &out.FinishedAt, 0); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	out.ContainerID = in.ContainerID
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func convert_v1beta3_ContainerStateTerminated_To_api_ContainerStateTerminated(in *ContainerStateTerminated, out *api.ContainerStateTerminated, s conversion.Scope) error {
 | 
			
		||||
	if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
 | 
			
		||||
		defaulting.(func(*ContainerStateTerminated))(in)
 | 
			
		||||
	}
 | 
			
		||||
	out.ExitCode = in.ExitCode
 | 
			
		||||
	out.Signal = in.Signal
 | 
			
		||||
	out.Reason = in.Reason
 | 
			
		||||
	out.Message = in.Message
 | 
			
		||||
	if err := s.Convert(&in.StartedAt, &out.StartedAt, 0); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	if err := s.Convert(&in.FinishedAt, &out.FinishedAt, 0); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	out.ContainerID = in.ContainerID
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -144,37 +144,6 @@ func convert_api_ContainerPort_To_v1beta3_ContainerPort(in *api.ContainerPort, o
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func convert_api_ContainerState_To_v1beta3_ContainerState(in *api.ContainerState, out *ContainerState, s conversion.Scope) error {
 | 
			
		||||
	if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
 | 
			
		||||
		defaulting.(func(*api.ContainerState))(in)
 | 
			
		||||
	}
 | 
			
		||||
	if in.Waiting != nil {
 | 
			
		||||
		out.Waiting = new(ContainerStateWaiting)
 | 
			
		||||
		if err := convert_api_ContainerStateWaiting_To_v1beta3_ContainerStateWaiting(in.Waiting, out.Waiting, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Waiting = nil
 | 
			
		||||
	}
 | 
			
		||||
	if in.Running != nil {
 | 
			
		||||
		out.Running = new(ContainerStateRunning)
 | 
			
		||||
		if err := convert_api_ContainerStateRunning_To_v1beta3_ContainerStateRunning(in.Running, out.Running, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Running = nil
 | 
			
		||||
	}
 | 
			
		||||
	if in.Termination != nil {
 | 
			
		||||
		out.Termination = new(ContainerStateTerminated)
 | 
			
		||||
		if err := convert_api_ContainerStateTerminated_To_v1beta3_ContainerStateTerminated(in.Termination, out.Termination, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Termination = nil
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func convert_api_ContainerStateRunning_To_v1beta3_ContainerStateRunning(in *api.ContainerStateRunning, out *ContainerStateRunning, s conversion.Scope) error {
 | 
			
		||||
	if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
 | 
			
		||||
		defaulting.(func(*api.ContainerStateRunning))(in)
 | 
			
		||||
@@ -185,24 +154,6 @@ func convert_api_ContainerStateRunning_To_v1beta3_ContainerStateRunning(in *api.
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func convert_api_ContainerStateTerminated_To_v1beta3_ContainerStateTerminated(in *api.ContainerStateTerminated, out *ContainerStateTerminated, s conversion.Scope) error {
 | 
			
		||||
	if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
 | 
			
		||||
		defaulting.(func(*api.ContainerStateTerminated))(in)
 | 
			
		||||
	}
 | 
			
		||||
	out.ExitCode = in.ExitCode
 | 
			
		||||
	out.Signal = in.Signal
 | 
			
		||||
	out.Reason = in.Reason
 | 
			
		||||
	out.Message = in.Message
 | 
			
		||||
	if err := s.Convert(&in.StartedAt, &out.StartedAt, 0); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	if err := s.Convert(&in.FinishedAt, &out.FinishedAt, 0); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	out.ContainerID = in.ContainerID
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func convert_api_ContainerStateWaiting_To_v1beta3_ContainerStateWaiting(in *api.ContainerStateWaiting, out *ContainerStateWaiting, s conversion.Scope) error {
 | 
			
		||||
	if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
 | 
			
		||||
		defaulting.(func(*api.ContainerStateWaiting))(in)
 | 
			
		||||
@@ -2290,37 +2241,6 @@ func convert_v1beta3_ContainerPort_To_api_ContainerPort(in *ContainerPort, out *
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func convert_v1beta3_ContainerState_To_api_ContainerState(in *ContainerState, out *api.ContainerState, s conversion.Scope) error {
 | 
			
		||||
	if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
 | 
			
		||||
		defaulting.(func(*ContainerState))(in)
 | 
			
		||||
	}
 | 
			
		||||
	if in.Waiting != nil {
 | 
			
		||||
		out.Waiting = new(api.ContainerStateWaiting)
 | 
			
		||||
		if err := convert_v1beta3_ContainerStateWaiting_To_api_ContainerStateWaiting(in.Waiting, out.Waiting, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Waiting = nil
 | 
			
		||||
	}
 | 
			
		||||
	if in.Running != nil {
 | 
			
		||||
		out.Running = new(api.ContainerStateRunning)
 | 
			
		||||
		if err := convert_v1beta3_ContainerStateRunning_To_api_ContainerStateRunning(in.Running, out.Running, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Running = nil
 | 
			
		||||
	}
 | 
			
		||||
	if in.Termination != nil {
 | 
			
		||||
		out.Termination = new(api.ContainerStateTerminated)
 | 
			
		||||
		if err := convert_v1beta3_ContainerStateTerminated_To_api_ContainerStateTerminated(in.Termination, out.Termination, s); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		out.Termination = nil
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func convert_v1beta3_ContainerStateRunning_To_api_ContainerStateRunning(in *ContainerStateRunning, out *api.ContainerStateRunning, s conversion.Scope) error {
 | 
			
		||||
	if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
 | 
			
		||||
		defaulting.(func(*ContainerStateRunning))(in)
 | 
			
		||||
@@ -2331,24 +2251,6 @@ func convert_v1beta3_ContainerStateRunning_To_api_ContainerStateRunning(in *Cont
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func convert_v1beta3_ContainerStateTerminated_To_api_ContainerStateTerminated(in *ContainerStateTerminated, out *api.ContainerStateTerminated, s conversion.Scope) error {
 | 
			
		||||
	if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
 | 
			
		||||
		defaulting.(func(*ContainerStateTerminated))(in)
 | 
			
		||||
	}
 | 
			
		||||
	out.ExitCode = in.ExitCode
 | 
			
		||||
	out.Signal = in.Signal
 | 
			
		||||
	out.Reason = in.Reason
 | 
			
		||||
	out.Message = in.Message
 | 
			
		||||
	if err := s.Convert(&in.StartedAt, &out.StartedAt, 0); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	if err := s.Convert(&in.FinishedAt, &out.FinishedAt, 0); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	out.ContainerID = in.ContainerID
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func convert_v1beta3_ContainerStateWaiting_To_api_ContainerStateWaiting(in *ContainerStateWaiting, out *api.ContainerStateWaiting, s conversion.Scope) error {
 | 
			
		||||
	if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found {
 | 
			
		||||
		defaulting.(func(*ContainerStateWaiting))(in)
 | 
			
		||||
@@ -4327,9 +4229,7 @@ func init() {
 | 
			
		||||
		convert_api_ComponentStatus_To_v1beta3_ComponentStatus,
 | 
			
		||||
		convert_api_ContainerPort_To_v1beta3_ContainerPort,
 | 
			
		||||
		convert_api_ContainerStateRunning_To_v1beta3_ContainerStateRunning,
 | 
			
		||||
		convert_api_ContainerStateTerminated_To_v1beta3_ContainerStateTerminated,
 | 
			
		||||
		convert_api_ContainerStateWaiting_To_v1beta3_ContainerStateWaiting,
 | 
			
		||||
		convert_api_ContainerState_To_v1beta3_ContainerState,
 | 
			
		||||
		convert_api_ContainerStatus_To_v1beta3_ContainerStatus,
 | 
			
		||||
		convert_api_DeleteOptions_To_v1beta3_DeleteOptions,
 | 
			
		||||
		convert_api_EmptyDirVolumeSource_To_v1beta3_EmptyDirVolumeSource,
 | 
			
		||||
@@ -4438,9 +4338,7 @@ func init() {
 | 
			
		||||
		convert_v1beta3_ComponentStatus_To_api_ComponentStatus,
 | 
			
		||||
		convert_v1beta3_ContainerPort_To_api_ContainerPort,
 | 
			
		||||
		convert_v1beta3_ContainerStateRunning_To_api_ContainerStateRunning,
 | 
			
		||||
		convert_v1beta3_ContainerStateTerminated_To_api_ContainerStateTerminated,
 | 
			
		||||
		convert_v1beta3_ContainerStateWaiting_To_api_ContainerStateWaiting,
 | 
			
		||||
		convert_v1beta3_ContainerState_To_api_ContainerState,
 | 
			
		||||
		convert_v1beta3_ContainerStatus_To_api_ContainerStatus,
 | 
			
		||||
		convert_v1beta3_DeleteOptions_To_api_DeleteOptions,
 | 
			
		||||
		convert_v1beta3_EmptyDirVolumeSource_To_api_EmptyDirVolumeSource,
 | 
			
		||||
 
 | 
			
		||||
@@ -349,20 +349,20 @@ func describeContainers(containers []api.ContainerStatus, out io.Writer) {
 | 
			
		||||
			if container.State.Waiting.Reason != "" {
 | 
			
		||||
				fmt.Fprintf(out, "      Reason:\t%s\n", container.State.Waiting.Reason)
 | 
			
		||||
			}
 | 
			
		||||
		case container.State.Termination != nil:
 | 
			
		||||
		case container.State.Terminated != nil:
 | 
			
		||||
			fmt.Fprintf(out, "    State:\tTerminated\n")
 | 
			
		||||
			if container.State.Termination.Reason != "" {
 | 
			
		||||
				fmt.Fprintf(out, "      Reason:\t%s\n", container.State.Termination.Reason)
 | 
			
		||||
			if container.State.Terminated.Reason != "" {
 | 
			
		||||
				fmt.Fprintf(out, "      Reason:\t%s\n", container.State.Terminated.Reason)
 | 
			
		||||
			}
 | 
			
		||||
			if container.State.Termination.Message != "" {
 | 
			
		||||
				fmt.Fprintf(out, "      Message:\t%s\n", container.State.Termination.Message)
 | 
			
		||||
			if container.State.Terminated.Message != "" {
 | 
			
		||||
				fmt.Fprintf(out, "      Message:\t%s\n", container.State.Terminated.Message)
 | 
			
		||||
			}
 | 
			
		||||
			fmt.Fprintf(out, "      Exit Code:\t%d\n", container.State.Termination.ExitCode)
 | 
			
		||||
			if container.State.Termination.Signal > 0 {
 | 
			
		||||
				fmt.Fprintf(out, "      Signal:\t%d\n", container.State.Termination.Signal)
 | 
			
		||||
			fmt.Fprintf(out, "      Exit Code:\t%d\n", container.State.Terminated.ExitCode)
 | 
			
		||||
			if container.State.Terminated.Signal > 0 {
 | 
			
		||||
				fmt.Fprintf(out, "      Signal:\t%d\n", container.State.Terminated.Signal)
 | 
			
		||||
			}
 | 
			
		||||
			fmt.Fprintf(out, "      Started:\t%s\n", container.State.Termination.StartedAt.Time.Format(time.RFC1123Z))
 | 
			
		||||
			fmt.Fprintf(out, "      Finished:\t%s\n", container.State.Termination.FinishedAt.Time.Format(time.RFC1123Z))
 | 
			
		||||
			fmt.Fprintf(out, "      Started:\t%s\n", container.State.Terminated.StartedAt.Time.Format(time.RFC1123Z))
 | 
			
		||||
			fmt.Fprintf(out, "      Finished:\t%s\n", container.State.Terminated.FinishedAt.Time.Format(time.RFC1123Z))
 | 
			
		||||
		default:
 | 
			
		||||
			fmt.Fprintf(out, "    State:\tWaiting\n")
 | 
			
		||||
		}
 | 
			
		||||
 
 | 
			
		||||
@@ -157,7 +157,7 @@ func TestDescribeContainers(t *testing.T) {
 | 
			
		||||
			input: api.ContainerStatus{
 | 
			
		||||
				Name: "test",
 | 
			
		||||
				State: api.ContainerState{
 | 
			
		||||
					Termination: &api.ContainerStateTerminated{
 | 
			
		||||
					Terminated: &api.ContainerStateTerminated{
 | 
			
		||||
						StartedAt:  util.NewTime(time.Now()),
 | 
			
		||||
						FinishedAt: util.NewTime(time.Now()),
 | 
			
		||||
						Reason:     "potato",
 | 
			
		||||
 
 | 
			
		||||
@@ -381,7 +381,7 @@ func interpretContainerStatus(status *api.ContainerStatus) (string, string, stri
 | 
			
		||||
	} else if state.Running != nil {
 | 
			
		||||
		// Get the information of the last termination state. This is useful if
 | 
			
		||||
		// a container is stuck in a crash loop.
 | 
			
		||||
		message := getTermMsg(status.LastTerminationState.Termination)
 | 
			
		||||
		message := getTermMsg(status.LastTerminationState.Terminated)
 | 
			
		||||
		if message != "" {
 | 
			
		||||
			message = "last termination: " + message
 | 
			
		||||
		}
 | 
			
		||||
@@ -390,8 +390,8 @@ func interpretContainerStatus(status *api.ContainerStatus) (string, string, stri
 | 
			
		||||
			stateMsg = stateMsg + " *not ready*"
 | 
			
		||||
		}
 | 
			
		||||
		return stateMsg, translateTimestamp(state.Running.StartedAt), message, nil
 | 
			
		||||
	} else if state.Termination != nil {
 | 
			
		||||
		return "Terminated", translateTimestamp(state.Termination.StartedAt), getTermMsg(state.Termination), nil
 | 
			
		||||
	} else if state.Terminated != nil {
 | 
			
		||||
		return "Terminated", translateTimestamp(state.Terminated.StartedAt), getTermMsg(state.Terminated), nil
 | 
			
		||||
	}
 | 
			
		||||
	return "", "", "", fmt.Errorf("unknown container state %#v", *state)
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -838,7 +838,7 @@ func TestInterpretContainerStatus(t *testing.T) {
 | 
			
		||||
		{
 | 
			
		||||
			status: &api.ContainerStatus{
 | 
			
		||||
				State: api.ContainerState{
 | 
			
		||||
					Termination: &api.ContainerStateTerminated{
 | 
			
		||||
					Terminated: &api.ContainerStateTerminated{
 | 
			
		||||
						ExitCode: 3,
 | 
			
		||||
					},
 | 
			
		||||
				},
 | 
			
		||||
@@ -851,7 +851,7 @@ func TestInterpretContainerStatus(t *testing.T) {
 | 
			
		||||
		{
 | 
			
		||||
			status: &api.ContainerStatus{
 | 
			
		||||
				State: api.ContainerState{
 | 
			
		||||
					Termination: &api.ContainerStateTerminated{
 | 
			
		||||
					Terminated: &api.ContainerStateTerminated{
 | 
			
		||||
						ExitCode: 5,
 | 
			
		||||
						Reason:   "test reason",
 | 
			
		||||
					},
 | 
			
		||||
 
 | 
			
		||||
@@ -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),
 | 
			
		||||
			},
 | 
			
		||||
 
 | 
			
		||||
@@ -299,15 +299,15 @@ func waitForPodSuccessInNamespace(c *client.Client, podName string, contName str
 | 
			
		||||
		if !ok {
 | 
			
		||||
			Logf("No Status.Info for container '%s' in pod '%s' yet", contName, podName)
 | 
			
		||||
		} else {
 | 
			
		||||
			if ci.State.Termination != nil {
 | 
			
		||||
				if ci.State.Termination.ExitCode == 0 {
 | 
			
		||||
			if ci.State.Terminated != nil {
 | 
			
		||||
				if ci.State.Terminated.ExitCode == 0 {
 | 
			
		||||
					By("Saw pod success")
 | 
			
		||||
					return true, nil
 | 
			
		||||
				} else {
 | 
			
		||||
					return true, fmt.Errorf("pod '%s' terminated with failure: %+v", podName, ci.State.Termination)
 | 
			
		||||
					return true, fmt.Errorf("pod '%s' terminated with failure: %+v", podName, ci.State.Terminated)
 | 
			
		||||
				}
 | 
			
		||||
			} else {
 | 
			
		||||
				Logf("Nil State.Termination for container '%s' in pod '%s' in namespace '%s' so far", contName, podName, namespace)
 | 
			
		||||
				Logf("Nil State.Terminated for container '%s' in pod '%s' in namespace '%s' so far", contName, podName, namespace)
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		return false, nil
 | 
			
		||||
@@ -903,10 +903,10 @@ func FailedContainers(pod api.Pod) map[string]ContainerFailures {
 | 
			
		||||
		return nil
 | 
			
		||||
	} else {
 | 
			
		||||
		for _, status := range statuses {
 | 
			
		||||
			if status.State.Termination != nil {
 | 
			
		||||
				states[status.ContainerID] = ContainerFailures{status: status.State.Termination}
 | 
			
		||||
			} else if status.LastTerminationState.Termination != nil {
 | 
			
		||||
				states[status.ContainerID] = ContainerFailures{status: status.LastTerminationState.Termination}
 | 
			
		||||
			if status.State.Terminated != nil {
 | 
			
		||||
				states[status.ContainerID] = ContainerFailures{status: status.State.Terminated}
 | 
			
		||||
			} else if status.LastTerminationState.Terminated != nil {
 | 
			
		||||
				states[status.ContainerID] = ContainerFailures{status: status.LastTerminationState.Terminated}
 | 
			
		||||
			}
 | 
			
		||||
			if status.RestartCount > 0 {
 | 
			
		||||
				var ok bool
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user