types

package
v0.0.0-...-3d60ae1 Latest Latest
Warning

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

Go to latest
Published: Jun 10, 2024 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

Package types for task

Package types for task

Package types for task

Index

Constants

View Source
const (
	// TaskTimeFormat task time format, e.g. 2006-01-02T15:04:05Z07:00
	TaskTimeFormat = time.RFC3339
	// DefaultJsonExtrasContent default json extras content
	DefaultJsonExtrasContent = "{}"
	// DefaultMaxExecuteTime default max execute time for 1 hour
	DefaultMaxExecuteTimeSeconds = 3600
)
View Source
const (
	// TaskStatusInit INIT task status
	TaskStatusInit = "INITIALIZING"
	// TaskStatusRunning running task status
	TaskStatusRunning = "RUNNING"
	// TaskStatusSuccess task success
	TaskStatusSuccess = "SUCCESS"
	// TaskStatusFailure task failed
	TaskStatusFailure = "FAILURE"
	// TaskStatusTimeout task run timeout
	TaskStatusTimeout = "TIMEOUT"
	// TaskStatusForceTerminate force task terminate
	TaskStatusForceTerminate = "FORCETERMINATE"
	// TaskStatusNotStarted force task terminate
	TaskStatusNotStarted = "NOTSTARTED"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Step

type Step struct {
	Name         string            `json:"name" bson:"name"`
	TaskName     string            `json:"taskname" bson:"taskname"`
	Params       map[string]string `json:"params" bson:"params"`
	Extras       string            `json:"extras" bson:"extras"`
	Status       string            `json:"status" bson:"status"`
	Message      string            `json:"message" bson:"message"`
	SkipOnFailed bool              `json:"skipOnFailed" bson:"skipOnFailed"`
	RetryCount   uint32            `json:"retryCount" bson:"retryCount"`

	Start               string `json:"start" bson:"start"`
	End                 string `json:"end" bson:"end"`
	ExecutionTime       uint32 `json:"executionTime" bson:"executionTime"`
	MaxExecutionSeconds uint32 `json:"maxExecutionSeconds" bson:"maxExecutionSeconds"`
	LastUpdate          string `json:"lastUpdate" bson:"lastUpdate"`
}

Step step definition

func NewStep

func NewStep(stepName string, taskName string) *Step

NewStep return a new step by default params

func (*Step) AddParam

func (s *Step) AddParam(key, value string) *Step

AddParam set step param by key,value

func (*Step) AddRetryCount

func (s *Step) AddRetryCount(count uint32) *Step

AddRetryCount add step retry count

func (*Step) GetEndTime

func (s *Step) GetEndTime() (time.Time, error)

GetEndTime get end time

func (*Step) GetExecutionTime

func (s *Step) GetExecutionTime() time.Duration

GetExecutionTime set execution time

func (*Step) GetExtras

func (s *Step) GetExtras(obj interface{}) error

GetExtras return unmarshal step extras

func (*Step) GetLastUpdate

func (s *Step) GetLastUpdate() (time.Time, error)

GetLastUpdate get last update time

func (*Step) GetMaxExecutionSeconds

func (s *Step) GetMaxExecutionSeconds() time.Duration

GetMaxExecutionSeconds get max execution seconds

func (*Step) GetMessage

func (s *Step) GetMessage() string

GetMessage get step message

func (*Step) GetParam

func (s *Step) GetParam(key string) (string, bool)

GetParam return step param by key

func (*Step) GetParamsAll

func (s *Step) GetParamsAll() map[string]string

GetParamsAll return all step params

func (*Step) GetRetryCount

func (s *Step) GetRetryCount() uint32

GetRetryCount get step retry count

func (*Step) GetSkipOnFailed

func (s *Step) GetSkipOnFailed() bool

GetSkipOnFailed get step skipOnFailed

func (*Step) GetStartTime

func (s *Step) GetStartTime() (time.Time, error)

GetStartTime get start time

func (*Step) GetStatus

func (s *Step) GetStatus() string

GetStatus return step status

func (*Step) GetStepName

func (s *Step) GetStepName() string

GetStepName return step name

func (*Step) GetTaskName

func (s *Step) GetTaskName() string

GetTaskName return task name

func (*Step) SetEndTime

func (s *Step) SetEndTime(t time.Time) *Step

SetEndTime set end time

func (*Step) SetExecutionTime

func (s *Step) SetExecutionTime(start time.Time, end time.Time) *Step

SetExecutionTime set execution time

func (*Step) SetExtrasAll

func (s *Step) SetExtrasAll(obj interface{}) error

SetExtrasAll set step extras by json string

func (*Step) SetLastUpdate

func (s *Step) SetLastUpdate(t time.Time) *Step

SetLastUpdate set last update time

func (*Step) SetMaxExecutionSeconds

func (s *Step) SetMaxExecutionSeconds(maxExecutionSeconds time.Duration) *Step

SetMaxExecutionSeconds set max execution seconds

func (*Step) SetMessage

func (s *Step) SetMessage(msg string) *Step

SetMessage set step message

func (*Step) SetNewParams

func (s *Step) SetNewParams(params map[string]string) *Step

SetNewParams replace all params by new params

func (*Step) SetParamMulti

func (s *Step) SetParamMulti(params map[string]string)

SetParamMulti set step params by map

func (*Step) SetSkipOnFailed

func (s *Step) SetSkipOnFailed(skipOnFailed bool) *Step

SetSkipOnFailed set step skipOnFailed

func (*Step) SetStartTime

func (s *Step) SetStartTime(t time.Time) *Step

SetStartTime update start time

func (*Step) SetStatus

func (s *Step) SetStatus(stat string) *Step

SetStatus set status

func (*Step) SetStepName

func (s *Step) SetStepName(name string) *Step

SetStepName set step name

func (*Step) SetTaskName

func (s *Step) SetTaskName(taskName string) *Step

SetTaskName set task name

type Task

type Task struct {
	// index for task, client should set this field
	Index    string `json:"index" bson:"index"`
	TaskID   string `json:"taskId" bson:"taskId"`
	TaskType string `json:"taskType" bson:"taskType"`
	TaskName string `json:"taskName" bson:"taskName"`
	// steps and params
	CurrentStep      string            `json:"currentStep" bson:"currentStep"`
	StepSequence     []string          `json:"stepSequence" bson:"stepSequence"`
	Steps            map[string]*Step  `json:"steps" bson:"steps"`
	CallBackFuncName string            `json:"callBackFuncName" bson:"callBackFuncName"`
	CommonParams     map[string]string `json:"commonParams" bson:"commonParams"`
	ExtraJson        string            `json:"extraJson" bson:"extraJson"`

	Status              string `json:"status" bson:"status"`
	Message             string `json:"message" bson:"message"`
	ForceTerminate      bool   `json:"forceTerminate" bson:"forceTerminate"`
	Start               string `json:"start" bson:"start"`
	End                 string `json:"end" bson:"end"`
	ExecutionTime       uint32 `json:"executionTime" bson:"executionTime"`
	MaxExecutionSeconds uint32 `json:"maxExecutionSeconds" bson:"maxExecutionSeconds"`
	Creator             string `json:"creator" bson:"creator"`
	LastUpdate          string `json:"lastUpdate" bson:"lastUpdate"`
	Updater             string `json:"updater" bson:"updater"`
}

Task task definition

func NewTask

func NewTask(o *TaskOptions) *Task

NewTask create new task by default

func (*Task) AddCommonParams

func (t *Task) AddCommonParams(k, v string) *Task

AddCommonParams add common params

func (*Task) AddStep

func (t *Task) AddStep(step *Step) *Task

AddStep add step to task

func (*Task) AddStepParams

func (t *Task) AddStepParams(stepName string, k, v string) error

AddStepParams add step params

func (*Task) AddStepParamsBatch

func (t *Task) AddStepParamsBatch(stepName string, params map[string]string) error

AddStepParamsBatch add step params batch

func (*Task) GetCallback

func (t *Task) GetCallback() string

GetCallback set callback function name

func (*Task) GetCommonParams

func (t *Task) GetCommonParams(key string) (string, bool)

GetCommonParams get common params

func (*Task) GetCreator

func (t *Task) GetCreator() string

GetCreator get creator

func (*Task) GetCurrentStep

func (t *Task) GetCurrentStep() string

GetCurrentStep get current step

func (*Task) GetEndTime

func (t *Task) GetEndTime() (time.Time, error)

GetEndTime get end time

func (*Task) GetExecutionTime

func (t *Task) GetExecutionTime() time.Duration

GetExecutionTime get execution time

func (*Task) GetExtra

func (t *Task) GetExtra(obj interface{}) error

GetExtra get extra json

func (*Task) GetForceTerminate

func (t *Task) GetForceTerminate() bool

GetForceTerminate get force terminate

func (*Task) GetIndex

func (t *Task) GetIndex() string

GetIndex get task id

func (*Task) GetLastUpdate

func (t *Task) GetLastUpdate() (time.Time, error)

GetLastUpdate get last update time

func (*Task) GetMaxExecutionSeconds

func (t *Task) GetMaxExecutionSeconds() time.Duration

GetMaxExecutionSeconds get max execution seconds

func (*Task) GetMessage

func (t *Task) GetMessage(msg string) string

GetMessage set message

func (*Task) GetStartTime

func (t *Task) GetStartTime() (time.Time, error)

GetStartTime get start time

func (*Task) GetStatus

func (t *Task) GetStatus() string

GetStatus get status

func (*Task) GetStep

func (t *Task) GetStep(stepName string) (*Step, bool)

GetStep get step by name

func (*Task) GetStepParam

func (t *Task) GetStepParam(stepName, key string) (string, bool)

GetStepParam get step params

func (*Task) GetTaskID

func (t *Task) GetTaskID() string

GetTaskID get task id

func (*Task) GetTaskName

func (t *Task) GetTaskName() string

GetTaskName get task name

func (*Task) GetTaskType

func (t *Task) GetTaskType() string

GetTaskType get task type

func (*Task) GetUpdater

func (t *Task) GetUpdater() string

GetUpdater get updater

func (*Task) SetCallback

func (t *Task) SetCallback(callBackFuncName string) *Task

SetCallback set callback function name

func (*Task) SetCreator

func (t *Task) SetCreator(creator string) *Task

SetCreator set creator

func (*Task) SetCurrentStep

func (t *Task) SetCurrentStep(stepName string) *Task

SetCurrentStep set current step

func (*Task) SetEndTime

func (t *Task) SetEndTime(time time.Time) *Task

SetEndTime set end time

func (*Task) SetExecutionTime

func (t *Task) SetExecutionTime(start time.Time, end time.Time) *Task

SetExecutionTime set execution time

func (*Task) SetExtraAll

func (t *Task) SetExtraAll(obj interface{}) error

SetExtraAll set extra json

func (*Task) SetForceTerminate

func (t *Task) SetForceTerminate(f bool) *Task

SetForceTerminate set force terminate

func (*Task) SetLastUpdate

func (t *Task) SetLastUpdate(lastUpdate time.Time) *Task

SetLastUpdate set last update time

func (*Task) SetMaxExecutionSeconds

func (t *Task) SetMaxExecutionSeconds(maxExecutionSeconds time.Duration) *Task

SetMaxExecutionSeconds set max execution seconds

func (*Task) SetMessage

func (t *Task) SetMessage(msg string) *Task

SetMessage set message

func (*Task) SetStartTime

func (t *Task) SetStartTime(time time.Time) *Task

SetStartTime set start time

func (*Task) SetStatus

func (t *Task) SetStatus(status string) *Task

SetStatus set status

func (*Task) SetUpdater

func (t *Task) SetUpdater(updater string) *Task

SetUpdater set updater

type TaskOptions

type TaskOptions struct {
	TaskIndex        string
	TaskType         string
	TaskName         string
	Creator          string
	CallBackFuncName string
}

TaskOptions task options definition

Jump to

Keyboard shortcuts

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