Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GeneratePodInitializedCondition ¶ added in v1.3.0
func GeneratePodInitializedCondition(spec *api.PodSpec, containerStatuses []api.ContainerStatus, podPhase api.PodPhase) api.PodCondition
GeneratePodInitializedCondition returns initialized condition if all init containers in a pod are ready, else it returns an uninitialized condition.
func GeneratePodReadyCondition ¶ added in v1.2.0
func GeneratePodReadyCondition(spec *api.PodSpec, containerStatuses []api.ContainerStatus, podPhase api.PodPhase) api.PodCondition
GeneratePodReadyCondition returns ready condition if all containers in a pod are ready, else it returns an unready condition.
Types ¶
type Manager ¶
type Manager interface {
PodStatusProvider
// Start the API server status sync loop.
Start()
// SetPodStatus caches updates the cached status for the given pod, and triggers a status update.
SetPodStatus(pod *api.Pod, status api.PodStatus)
// SetContainerReadiness updates the cached container status with the given readiness, and
// triggers a status update.
SetContainerReadiness(podUID types.UID, containerID kubecontainer.ContainerID, ready bool)
// TerminatePod resets the container status for the provided pod to terminated and triggers
// a status update.
TerminatePod(pod *api.Pod)
// RemoveOrphanedStatuses scans the status cache and removes any entries for pods not included in
// the provided podUIDs.
RemoveOrphanedStatuses(podUIDs map[types.UID]bool)
}
Manager is the Source of truth for kubelet pod status, and should be kept up-to-date with the latest api.PodStatus. It also syncs updates back to the API server.
func NewManager ¶
func NewManager(kubeClient clientset.Interface, podManager kubepod.Manager) Manager
type PodStatusProvider ¶ added in v1.4.0
type PodStatusProvider interface {
// GetPodStatus returns the cached status for the provided pod UID, as well as whether it
// was a cache hit.
GetPodStatus(uid types.UID) (api.PodStatus, bool)
}
PodStatusProvider knows how to provide status for a pod. It's intended to be used by other components that need to introspect status.
Click to show internal directories.
Click to hide internal directories.