jobs

package
v5.34.0 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 2021 License: AGPL-3.0, Apache-2.0 Imports: 14 Imported by: 33

Documentation

Index

Constants

View Source
const (
	CancelWatcherPollingInterval = 5000
)

Variables

View Source
var DefaultWatcherPollingInterval = 15000

Default polling interval for jobs termination. (Defining as `var` rather than `const` allows tests to lower the interval.)

Functions

func GenerateNextStartDateTime

func GenerateNextStartDateTime(now time.Time, nextStartTime time.Time) *time.Time

Types

type JobServer

type JobServer struct {
	ConfigService configservice.ConfigService
	Store         store.Store

	Workers    *Workers
	Schedulers *Schedulers

	DataRetentionJob        ejobs.DataRetentionJobInterface
	MessageExportJob        ejobs.MessageExportJobInterface
	ElasticsearchAggregator ejobs.ElasticsearchAggregatorInterface
	ElasticsearchIndexer    tjobs.IndexerJobInterface
	LdapSync                ejobs.LdapSyncInterface
	Migrations              tjobs.MigrationsJobInterface
	Plugins                 tjobs.PluginsJobInterface
	BleveIndexer            tjobs.IndexerJobInterface
	ExpiryNotify            tjobs.ExpiryNotifyJobInterface
	ProductNotices          tjobs.ProductNoticesJobInterface
	ActiveUsers             tjobs.ActiveUsersJobInterface
	ImportProcess           tjobs.ImportProcessInterface
	ImportDelete            tjobs.ImportDeleteInterface
	ExportProcess           tjobs.ExportProcessInterface
	ExportDelete            tjobs.ExportDeleteInterface
	Cloud                   ejobs.CloudJobInterface
	// contains filtered or unexported fields
}

func NewJobServer

func NewJobServer(configService configservice.ConfigService, store store.Store, metrics einterfaces.MetricsInterface) *JobServer

func (*JobServer) CancellationWatcher

func (srv *JobServer) CancellationWatcher(ctx context.Context, jobId string, cancelChan chan interface{})

func (*JobServer) CheckForPendingJobsByType

func (srv *JobServer) CheckForPendingJobsByType(jobType string) (bool, *model.AppError)

func (*JobServer) ClaimJob

func (srv *JobServer) ClaimJob(job *model.Job) (bool, *model.AppError)

func (*JobServer) Config

func (srv *JobServer) Config() *model.Config

func (*JobServer) CreateJob

func (srv *JobServer) CreateJob(jobType string, jobData map[string]string) (*model.Job, *model.AppError)

func (*JobServer) GetJob

func (srv *JobServer) GetJob(id string) (*model.Job, *model.AppError)

func (*JobServer) GetLastSuccessfulJobByType

func (srv *JobServer) GetLastSuccessfulJobByType(jobType string) (*model.Job, *model.AppError)

func (*JobServer) InitSchedulers

func (srv *JobServer) InitSchedulers() *Schedulers

func (*JobServer) InitWorkers

func (srv *JobServer) InitWorkers() *Workers

func (*JobServer) MakeWatcher

func (srv *JobServer) MakeWatcher(workers *Workers, pollingInterval int) *Watcher

func (*JobServer) RequestCancellation

func (srv *JobServer) RequestCancellation(jobId string) *model.AppError

func (*JobServer) SetJobCanceled

func (srv *JobServer) SetJobCanceled(job *model.Job) *model.AppError

func (*JobServer) SetJobError

func (srv *JobServer) SetJobError(job *model.Job, jobError *model.AppError) *model.AppError

func (*JobServer) SetJobProgress

func (srv *JobServer) SetJobProgress(job *model.Job, progress int64) *model.AppError

func (*JobServer) SetJobSuccess

func (srv *JobServer) SetJobSuccess(job *model.Job) *model.AppError

func (*JobServer) SetJobWarning added in v5.24.0

func (srv *JobServer) SetJobWarning(job *model.Job) *model.AppError

func (*JobServer) StartSchedulers

func (srv *JobServer) StartSchedulers()

func (*JobServer) StartWorkers

func (srv *JobServer) StartWorkers()

func (*JobServer) StopSchedulers

func (srv *JobServer) StopSchedulers()

func (*JobServer) StopWorkers

func (srv *JobServer) StopWorkers()

func (*JobServer) UpdateInProgressJobData

func (srv *JobServer) UpdateInProgressJobData(job *model.Job) *model.AppError

type Schedulers

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

func (*Schedulers) HandleClusterLeaderChange

func (schedulers *Schedulers) HandleClusterLeaderChange(isLeader bool)

func (*Schedulers) Start

func (schedulers *Schedulers) Start() *Schedulers

func (*Schedulers) Stop

func (schedulers *Schedulers) Stop() *Schedulers

type Watcher

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

func (*Watcher) PollAndNotify

func (watcher *Watcher) PollAndNotify()

func (*Watcher) Start

func (watcher *Watcher) Start()

func (*Watcher) Stop

func (watcher *Watcher) Stop()

type Workers

type Workers struct {
	ConfigService configservice.ConfigService
	Watcher       *Watcher

	DataRetention            model.Worker
	MessageExport            model.Worker
	ElasticsearchIndexing    model.Worker
	ElasticsearchAggregation model.Worker
	LdapSync                 model.Worker
	Migrations               model.Worker
	Plugins                  model.Worker
	BleveIndexing            model.Worker
	ExpiryNotify             model.Worker
	ProductNotices           model.Worker
	ActiveUsers              model.Worker
	ImportProcess            model.Worker
	ImportDelete             model.Worker
	ExportProcess            model.Worker
	ExportDelete             model.Worker
	Cloud                    model.Worker
	// contains filtered or unexported fields
}

func (*Workers) Start

func (workers *Workers) Start() *Workers

func (*Workers) Stop

func (workers *Workers) Stop() *Workers

Jump to

Keyboard shortcuts

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