job

package
v1.29.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 14, 2024 License: Apache-2.0 Imports: 15 Imported by: 22

Documentation

Index

Constants

View Source
const (
	// JobTimeout is how long to wait for a job to finish.
	JobTimeout = 15 * time.Minute

	// JobSelectorKey is a job selector name
	JobSelectorKey = "job"
)

Variables

This section is empty.

Functions

func CreateJob

func CreateJob(ctx context.Context, c clientset.Interface, ns string, job *batchv1.Job) (*batchv1.Job, error)

CreateJob uses c to create job in namespace ns. If the returned error is nil, the returned Job is valid and has been created.

func GetAllRunningJobPods added in v1.26.0

func GetAllRunningJobPods(ctx context.Context, c clientset.Interface, ns, jobName string) ([]v1.Pod, error)

GetAllRunningJobPods returns a list of all running Pods belonging to a Job.

func GetJob

func GetJob(ctx context.Context, c clientset.Interface, ns, name string) (*batchv1.Job, error)

GetJob uses c to get the Job in namespace ns named name. If the returned error is nil, the returned Job is valid.

func GetJobPods

func GetJobPods(ctx context.Context, c clientset.Interface, ns, jobName string) (*v1.PodList, error)

GetJobPods returns a list of Pods belonging to a Job.

func NewTestJob

func NewTestJob(behavior, name string, rPol v1.RestartPolicy, parallelism, completions int32, activeDeadlineSeconds *int64, backoffLimit int32) *batchv1.Job

NewTestJob returns a Job which does one of several testing behaviors. notTerminate starts a Job that will run effectively forever. fail starts a Job that will fail immediately. succeed starts a Job that will succeed immediately. randomlySucceedOrFail starts a Job that will succeed or fail randomly. failOnce fails the Job the first time it is run and succeeds subsequently. name is the Name of the Job. RestartPolicy indicates the restart policy of the containers in which the Pod is running. Parallelism is the Job's parallelism, and completions is the Job's required number of completions.

func NewTestJobOnNode added in v1.18.0

func NewTestJobOnNode(behavior, name string, rPol v1.RestartPolicy, parallelism, completions int32, activeDeadlineSeconds *int64, backoffLimit int32, nodeName string) *batchv1.Job

NewTestJobOnNode is similar to NewTestJob but supports specifying a Node on which the Job's Pods will run. Empty nodeName means no node selection constraints.

func UpdateJob

func UpdateJob(ctx context.Context, c clientset.Interface, ns string, job *batchv1.Job) (*batchv1.Job, error)

UpdateJob uses c to update a job in namespace ns. If the returned error is nil, the returned Job is valid and has been updated.

func WaitForAllJobPodsGone

func WaitForAllJobPodsGone(ctx context.Context, c clientset.Interface, ns, jobName string) error

WaitForAllJobPodsGone waits for all pods for the Job named jobName in namespace ns to be deleted.

func WaitForJobComplete

func WaitForJobComplete(ctx context.Context, c clientset.Interface, ns, jobName string, completions int32) error

WaitForJobComplete uses c to wait for completions to complete for the Job jobName in namespace ns.

func WaitForJobFailed added in v1.26.0

func WaitForJobFailed(c clientset.Interface, ns, jobName string) error

WaitForJobFailed uses c to wait for the Job jobName in namespace ns to fail

func WaitForJobFinish

func WaitForJobFinish(ctx context.Context, c clientset.Interface, ns, jobName string) error

WaitForJobFinish uses c to wait for the Job jobName in namespace ns to finish (either Failed or Complete).

func WaitForJobGone

func WaitForJobGone(ctx context.Context, c clientset.Interface, ns, jobName string, timeout time.Duration) error

WaitForJobGone uses c to wait for up to timeout for the Job named jobName in namespace ns to be removed.

func WaitForJobPodsRunning added in v1.26.0

func WaitForJobPodsRunning(ctx context.Context, c clientset.Interface, ns, jobName string, expectedCount int32) error

WaitForJobPodsRunning wait for all pods for the Job named JobName in namespace ns to become Running. Only use when pods will run for a long time, or it will be racy.

func WaitForJobPodsSucceeded added in v1.26.0

func WaitForJobPodsSucceeded(ctx context.Context, c clientset.Interface, ns, jobName string, expectedCount int32) error

WaitForJobPodsSucceeded wait for all pods for the Job named JobName in namespace ns to become Succeeded.

func WaitForJobReady added in v1.29.0

func WaitForJobReady(ctx context.Context, c clientset.Interface, ns, jobName string, ready *int32) error

WaitForJobReady waits for particular value of the Job .status.ready field

func WaitForJobState added in v1.29.0

func WaitForJobState(ctx context.Context, c clientset.Interface, ns, jobName string, timeout time.Duration, state JobState) error

WaitForJobState waits for a job to be matched to the given condition. The condition callback may use gomega.StopTrying to abort early.

func WaitForJobSuspend added in v1.29.0

func WaitForJobSuspend(ctx context.Context, c clientset.Interface, ns, jobName string) error

WaitForJobSuspend uses c to wait for suspend condition for the Job jobName in namespace ns.

Types

type JobState added in v1.29.0

type JobState func(job *batchv1.Job) string

JobState is used to verify if Job matches a particular condition. If it matches, an empty string is returned. Otherwise, the string explains why the condition is not matched. This should be a short string. A dump of the job object will get added by the caller.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL