task

package
v1.17.5 Latest Latest
Warning

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

Go to latest
Published: Dec 1, 2025 License: Apache-2.0 Imports: 13 Imported by: 4

Documentation

Index

Constants

View Source
const (
	// GlobalHookRun runs a global hook.
	GlobalHookRun task.TaskType = "GlobalHookRun"
	// ModuleHookRun runs schedule or kubernetes hook.
	ModuleHookRun task.TaskType = "ModuleHookRun"
	// ModuleDelete runs helm delete/afterHelmDelete sequence.
	ModuleDelete task.TaskType = "ModuleDelete"
	// ModuleRun runs beforeHelm/helm upgrade/afterHelm sequence.
	ModuleRun task.TaskType = "ModuleRun"
	// ParallelModuleRun runs beforeHelm/helm upgrade/afterHelm sequence for a bunch of modules in parallel.
	ParallelModuleRun task.TaskType = "ParallelModuleRun"
	// ModulePurge - delete unknown helm release (no module in ModulesDir)
	ModulePurge task.TaskType = "ModulePurge"
	// ModuleEnsureCRDs runs ensureCRDs task for enabled module
	ModuleEnsureCRDs task.TaskType = "ModuleEnsureCRDs"

	// DiscoverHelmReleases lists helm releases to detect unknown modules and initiate enabled modules list.
	DiscoverHelmReleases task.TaskType = "DiscoverHelmReleases"

	// ConvergeModules runs beforeAll/run modules/afterAll sequence for all enabled modules.
	ConvergeModules task.TaskType = "ConvergeModules"

	// ApplyKubeConfigValues validates and updates modules' values
	ApplyKubeConfigValues task.TaskType = "ApplyKubeConfigValues"

	GlobalHookEnableKubernetesBindings      task.TaskType = "GlobalHookEnableKubernetesBindings"
	GlobalHookWaitKubernetesSynchronization task.TaskType = "GlobalHookWaitKubernetesSynchronization"
	GlobalHookEnableScheduleBindings        task.TaskType = "GlobalHookEnableScheduleBindings"
)

Addon-operator specific task types

Variables

This section is empty.

Functions

This section is empty.

Types

type HookMetadata

type HookMetadata struct {
	EventDescription    string // event name for informative queue dump
	HookName            string
	ModuleName          string
	ParallelRunMetadata *ParallelRunMetadata
	Binding             string // binding name from configuration
	BindingType         types.BindingType
	BindingContext      []bindingcontext.BindingContext
	AllowFailure        bool // Task considered as 'ok' if hook failed. False by default. Can be true for some schedule hooks.
	Critical            bool

	DoModuleStartup bool // Execute onStartup and kubernetes@Synchronization hooks for module
	IsReloadAll     bool // ModuleRun task is a part of 'Reload all modules' process.

	ValuesChecksum           string // checksum of global values before first afterAll hook execution
	GlobalValuesChanged      bool   // global values changed flag
	LastAfterAllHook         bool   // true if task is a last afterAll hook in sequence
	ReloadAllOnValuesChanges bool   // whether to run DiscoverModules process if hook change global values

	KubernetesBindingId      string   // Unique id for kubernetes bindings
	WaitForSynchronization   bool     // kubernetes.Synchronization task should be waited
	MonitorIDs               []string // an array of monitor IDs to unlock Kubernetes events after Synchronization.
	ExecuteOnSynchronization bool     // A flag to skip hook execution in Synchronization tasks.
}

HookMetadata is a metadata for addon-operator tasks

func HookMetadataAccessor

func HookMetadataAccessor(t task.Task) HookMetadata

func (HookMetadata) GetBinding added in v1.6.0

func (hm HookMetadata) GetBinding() string

func (HookMetadata) GetBindingContext

func (hm HookMetadata) GetBindingContext() []bindingcontext.BindingContext

func (HookMetadata) GetDescription

func (hm HookMetadata) GetDescription() string

func (HookMetadata) GetHookName

func (hm HookMetadata) GetHookName() string

func (HookMetadata) GetKubernetesBindingID added in v1.6.0

func (hm HookMetadata) GetKubernetesBindingID() string

func (HookMetadata) GetMonitorIDs

func (hm HookMetadata) GetMonitorIDs() []string

func (HookMetadata) IsSynchronization

func (hm HookMetadata) IsSynchronization() bool

func (HookMetadata) SetBindingContext added in v1.11.0

func (hm HookMetadata) SetBindingContext(context []bindingcontext.BindingContext) interface{}

func (HookMetadata) SetMonitorIDs added in v1.11.0

func (hm HookMetadata) SetMonitorIDs(monitorIDs []string) interface{}

type ParallelRunMetadata added in v1.5.0

type ParallelRunMetadata struct {
	// channelId of the parallelTaskChannel to communicate between parallel ModuleRun and ParallelModuleRun tasks
	ChannelId string
	// context with cancel to stop ParallelModuleRun task
	Context context.Context
	CancelF func()
	// contains filtered or unexported fields
}

ParallelRunMetadata is metadata for a parallel task

func (*ParallelRunMetadata) DeleteModuleMetadata added in v1.5.0

func (pm *ParallelRunMetadata) DeleteModuleMetadata(moduleName string)

func (*ParallelRunMetadata) GetModulesMetadata added in v1.5.0

func (pm *ParallelRunMetadata) GetModulesMetadata() map[string]ParallelRunModuleMetadata

func (*ParallelRunMetadata) ListModules added in v1.5.0

func (pm *ParallelRunMetadata) ListModules() []string

func (*ParallelRunMetadata) SetModuleMetadata added in v1.5.0

func (pm *ParallelRunMetadata) SetModuleMetadata(moduleName string, metadata ParallelRunModuleMetadata)

type ParallelRunModuleMetadata added in v1.5.0

type ParallelRunModuleMetadata struct {
	DoModuleStartup bool
}

ParallelRunModuleMetadata is metadata for a parallel module

type Task added in v1.7.0

type Task interface {
	Handle(ctx context.Context) queue.TaskResult
}

Jump to

Keyboard shortcuts

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