job

package
v0.3.48 Latest Latest
Warning

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

Go to latest
Published: Feb 2, 2023 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ClusterJobContext

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

func NewClusterJobContext

func NewClusterJobContext(
	clusterContext context.ClusterContext,
	pendingPodChecker podchecks.PodChecker,
	stuckTerminatingPodExpiry time.Duration,
	updateThreadCount int,
) *ClusterJobContext

func (*ClusterJobContext) AddAnnotation

func (c *ClusterJobContext) AddAnnotation(jobs []*RunningJob, annotations map[string]string)

func (*ClusterJobContext) DeleteJobWithCondition added in v0.3.47

func (c *ClusterJobContext) DeleteJobWithCondition(job *RunningJob, condition func(pod *v1.Pod) bool) error

func (*ClusterJobContext) DeleteJobs

func (c *ClusterJobContext) DeleteJobs(jobs []*RunningJob)

func (*ClusterJobContext) GetJobs

func (c *ClusterJobContext) GetJobs() ([]*RunningJob, error)

func (*ClusterJobContext) MarkIssueReported

func (c *ClusterJobContext) MarkIssueReported(issue *PodIssue)

func (*ClusterJobContext) MarkIssuesResolved

func (c *ClusterJobContext) MarkIssuesResolved(job *RunningJob)

type FailedSubmissionDetails

type FailedSubmissionDetails struct {
	JobId       string
	Pod         *v1.Pod
	Error       error
	Recoverable bool
}

type IssueType

type IssueType int
const (
	UnableToSchedule  IssueType = iota
	StuckStartingUp   IssueType = iota
	StuckTerminating  IssueType = iota
	ExternallyDeleted IssueType = iota
)

type JobContext

type JobContext interface {
	GetJobs() ([]*RunningJob, error)
	MarkIssueReported(issue *PodIssue)
	MarkIssuesResolved(job *RunningJob)
	DeleteJobWithCondition(job *RunningJob, condition func(pod *v1.Pod) bool) error
	DeleteJobs(jobs []*RunningJob)
	AddAnnotation(jobs []*RunningJob, annotations map[string]string)
}

type PodIssue

type PodIssue struct {
	OriginatingPod *v1.Pod
	Pods           []*v1.Pod
	Message        string
	Retryable      bool
	Reported       bool
	Type           IssueType
	Cause          api.Cause
}

type RunningJob

type RunningJob struct {
	JobId      string
	ActivePods []*v1.Pod
	Issue      *PodIssue
}

type SubmitJob added in v0.3.47

type SubmitJob struct {
	Meta      SubmitJobMetaInfo
	Pod       *v1.Pod
	Ingresses []*networking.Ingress
	Services  []*v1.Service
}

func CreateSubmitJobFromApiJob added in v0.3.47

func CreateSubmitJobFromApiJob(apiJob *api.Job, podDefaults *configuration.PodDefaults) *SubmitJob

func CreateSubmitJobFromExecutorApiJobRunLease added in v0.3.47

func CreateSubmitJobFromExecutorApiJobRunLease(
	jobRunLease *executorapi.JobRunLease,
	podDefaults *configuration.PodDefaults,
) (*SubmitJob, error)

func CreateSubmitJobsFromApiJobs added in v0.3.47

func CreateSubmitJobsFromApiJobs(apiJobs []*api.Job, podDefaults *configuration.PodDefaults) []*SubmitJob

type SubmitJobMetaInfo added in v0.3.47

type SubmitJobMetaInfo struct {
	JobId           string
	Owner           string
	OwnershipGroups []string
}

type SubmitService

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

func NewSubmitter

func NewSubmitter(
	clusterContext context.ClusterContext,
	podDefaults *configuration.PodDefaults,
	submissionThreadCount int,
	fatalPodSubmissionErrors []string,
) *SubmitService

func (*SubmitService) SubmitApiJobs added in v0.3.47

func (submitService *SubmitService) SubmitApiJobs(jobsToSubmit []*api.Job) []*FailedSubmissionDetails

func (*SubmitService) SubmitExecutorApiJobs added in v0.3.47

func (submitService *SubmitService) SubmitExecutorApiJobs(jobsToSubmit []*executorapi.JobRunLease) []*FailedSubmissionDetails

type Submitter

type Submitter interface {
	SubmitApiJobs(jobsToSubmit []*api.Job) []*FailedSubmissionDetails
	SubmitExecutorApiJobs(jobsToSubmit []*executorapi.JobRunLease) []*FailedSubmissionDetails
}

Jump to

Keyboard shortcuts

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