 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- Constants
- func GeneratePodInitializedCondition(spec *v1.PodSpec, containerStatuses []v1.ContainerStatus, podPhase v1.PodPhase) v1.PodCondition
- func GeneratePodReadyCondition(spec *v1.PodSpec, containerStatuses []v1.ContainerStatus, podPhase v1.PodPhase) v1.PodCondition
- type Manager
- type PodDeletionSafetyProvider
- type PodStatusProvider
Constants ¶
      View Source
      
  
const ( UnknownContainerStatuses = "UnknownContainerStatuses" PodCompleted = "PodCompleted" ContainersNotReady = "ContainersNotReady" ContainersNotInitialized = "ContainersNotInitialized" )
Variables ¶
This section is empty.
Functions ¶
func GeneratePodInitializedCondition ¶ added in v1.3.0
func GeneratePodInitializedCondition(spec *v1.PodSpec, containerStatuses []v1.ContainerStatus, podPhase v1.PodPhase) v1.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 *v1.PodSpec, containerStatuses []v1.ContainerStatus, podPhase v1.PodPhase) v1.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 *v1.Pod, status v1.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 *v1.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 v1.PodStatus. It also syncs updates back to the API server.
func NewManager ¶
type PodDeletionSafetyProvider ¶ added in v1.6.0
type PodDeletionSafetyProvider interface {
	// A function which returns true if the pod can safely be deleted
	PodResourcesAreReclaimed(pod *v1.Pod, status v1.PodStatus) bool
}
    An object which provides guarantees that a pod can be saftely deleted.
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) (v1.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.