...

Package job

import "k8s.io/kubernetes/pkg/controller/job"
Overview
Index
Subdirectories

Overview ▾

Package job contains logic for watching and synchronizing jobs.

Variables

var (

    // DefaultJobApiBackOff is the default API backoff period. Exported for tests.
    DefaultJobApiBackOff = time.Second
    // MaxJobApiBackOff is the max API backoff period. Exported for tests.
    MaxJobApiBackOff = time.Minute
    // DefaultJobPodFailureBackOff is the default pod failure backoff period. Exported for tests.
    DefaultJobPodFailureBackOff = 10 * time.Second
    // MaxJobPodFailureBackOff is the max  pod failure backoff period. Exported for tests.
    MaxJobPodFailureBackOff = 10 * time.Minute
    // MaxUncountedPods is the maximum size the slices in
    // .status.uncountedTerminatedPods should have to keep their representation
    // roughly below 20 KB. Exported for tests
    MaxUncountedPods = 500
    // MaxPodCreateDeletePerSync is the maximum number of pods that can be
    // created or deleted in a single sync call. Exported for tests.
    MaxPodCreateDeletePerSync = 500
)

func IsJobFinished

func IsJobFinished(j *batch.Job) bool

IsJobFinished checks whether the given Job has finished execution. It does not discriminate between successful and failed terminations.

type Controller

Controller ensures that all Job objects have corresponding pods to run their configured workload.

type Controller struct {
    // contains filtered or unexported fields
}

func NewController

func NewController(ctx context.Context, podInformer coreinformers.PodInformer, jobInformer batchinformers.JobInformer, kubeClient clientset.Interface) (*Controller, error)

NewController creates a new Job controller that keeps the relevant pods in sync with their corresponding Job objects.

func (*Controller) Run

func (jm *Controller) Run(ctx context.Context, workers int)

Run the main goroutine responsible for watching and syncing jobs.

Subdirectories

Name Synopsis
..
config
v1alpha1
metrics