restask

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

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

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

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	Keywords = []keywords.Keyword{
		{
			Attr:       "Check",
			Candidates: []string{"last_run", ""},
			Example:    "last_run",
			Option:     "check",
			Scopable:   true,
			Text:       keywords.NewText(fs, "text/kw/check"),
		},
		{
			Attr:      "Confirmation",
			Converter: converters.Bool,
			Option:    "confirmation",
			Text:      keywords.NewText(fs, "text/kw/confirmation"),
		},
		{
			Attr:      "LogOutputs",
			Converter: converters.Bool,
			Default:   "true",
			Option:    "log",
			Scopable:  true,
			Text:      keywords.NewText(fs, "text/kw/log"),
		},
		{
			Attr:      "MaxParallel",
			Converter: converters.Int,
			Default:   "1",
			Example:   "2",
			Option:    "max_parallel",
			Scopable:  true,
			Text:      keywords.NewText(fs, "text/kw/max_parallel"),
		},
		{
			Attr:     "OnErrorCmd",
			Example:  "/srv/{name}/data/scripts/task_on_error.sh",
			Option:   "on_error",
			Scopable: true,
			Text:     keywords.NewText(fs, "text/kw/on_error"),
		},
		{
			Attr:     "RetCodes",
			Default:  "0:up 1:down",
			Example:  "0:up 1:down 3:warn 4: n/a 5:undef",
			Option:   "retcodes",
			Required: false,
			Scopable: true,
			Text:     keywords.NewText(fs, "text/kw/retcodes"),
		},
		{
			Attr:      "RunTimeout",
			Converter: converters.Duration,
			Example:   "1m30s",
			Option:    "run_timeout",
			Scopable:  true,
			Text:      keywords.NewText(fs, "text/kw/run_timeout"),
		},
		{
			Attr:          "Schedule",
			DefaultOption: "run_schedule",
			Example:       "00:00-01:00 mon",
			Option:        "schedule",
			Scopable:      true,
			Text:          keywords.NewText(fs, "text/kw/schedule"),
		},
		{
			Attr:      "Snooze",
			Converter: converters.Duration,
			Example:   "10m",
			Option:    "snooze",
			Scopable:  true,
			Text:      keywords.NewText(fs, "text/kw/snooze"),
		},
		{
			Attr:      "Timeout",
			Converter: converters.Duration,
			Example:   "5m",
			Option:    "timeout",
			Scopable:  true,
			Text:      keywords.NewText(fs, "text/kw/timeout"),
		},
	}
)

Functions

This section is empty.

Types

type BaseTask

type BaseTask struct {
	resource.T
	Check        string
	Confirmation bool
	LogOutputs   bool
	MaxParallel  int
	OnErrorCmd   string
	RetCodes     string
	RunTimeout   *time.Duration
	Schedule     string
	Snooze       *time.Duration
}

func (*BaseTask) ExitCodeToStatus

func (t *BaseTask) ExitCodeToStatus(exitCode int) (status.T, error)

func (*BaseTask) IsRunning

func (t *BaseTask) IsRunning() bool

func (*BaseTask) RunDir

func (t *BaseTask) RunDir() runfiles.Dir

func (*BaseTask) RunIf

func (t *BaseTask) RunIf(ctx context.Context, fn func(context.Context) error) error

func (*BaseTask) ScheduleOptions

func (t *BaseTask) ScheduleOptions() resource.ScheduleOptions

func (*BaseTask) Status

func (t *BaseTask) Status(ctx context.Context) status.T

func (*BaseTask) WriteLastRun

func (t *BaseTask) WriteLastRun(retcode int) error

Jump to

Keyboard shortcuts

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