taskmanager

package
v1.0.19 Latest Latest
Warning

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

Go to latest
Published: Feb 22, 2026 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ClientResolver

type ClientResolver func(nodeName string) (*api.Client, error)

ClientResolver is a function that returns an API client for a given node.

type Task

type Task struct {
	ID          string
	Type        string // "Start", "Stop", "Migrate", etc.
	Description string
	Status      TaskStatus
	Progress    int
	CreatedAt   time.Time
	StartedAt   time.Time
	FinishedAt  time.Time
	Error       error

	// Target info
	TargetVMID int
	TargetNode string
	TargetName string

	// Operation to execute. Returns UPID if async, or error.
	Operation func() (string, error)

	// Proxmox UPID
	UPID string

	// Callbacks
	OnComplete func(error)
}

type TaskManager

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

func NewTaskManager

func NewTaskManager(clientResolver ClientResolver, updateNotify func()) *TaskManager

func NewTaskManagerWithMaxRunning added in v1.0.19

func NewTaskManagerWithMaxRunning(clientResolver ClientResolver, updateNotify func(), maxRunning int) *TaskManager

func (*TaskManager) CancelTask

func (tm *TaskManager) CancelTask(taskID string) error

func (*TaskManager) Enqueue

func (tm *TaskManager) Enqueue(task *Task)

func (*TaskManager) GetActiveTask

func (tm *TaskManager) GetActiveTask(vmid int) *Task

func (*TaskManager) GetActiveTaskForVM

func (tm *TaskManager) GetActiveTaskForVM(node string, vmid int) *Task

func (*TaskManager) GetAllTasks

func (tm *TaskManager) GetAllTasks() []*Task

func (*TaskManager) Stop

func (tm *TaskManager) Stop()

type TaskStatus

type TaskStatus string
const (
	StatusQueued    TaskStatus = "queued"
	StatusRunning   TaskStatus = "running"
	StatusCompleted TaskStatus = "completed"
	StatusFailed    TaskStatus = "failed"
	StatusCancelled TaskStatus = "cancelled"
)

Jump to

Keyboard shortcuts

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