cluster

package
v0.1.3 Latest Latest
Warning

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

Go to latest
Published: Aug 31, 2026 License: MIT Imports: 3 Imported by: 6

Documentation

Index

Constants

View Source
const (
	Gitlab        = "gitlab"
	Github        = "github"
	CPUPeriodBase = 100000
	// ERUMark labels a workload as controlled by eru.
	ERUMark = "ERU"
	// LabelMeta holds the encoded publish and healthcheck metadata.
	LabelMeta = "ERU_META"
	// LabelCoreID labels a workload with its owning core identifier.
	LabelCoreID = "eru.coreid"
	// LabelNodeName labels a workload with its nodename.
	LabelNodeName     = "eru.nodename"
	WorkloadStop      = "stop"
	WorkloadStart     = "start"
	WorkloadRestart   = "restart"
	WorkloadSuspend   = "suspend"
	WorkloadResume    = "resume"
	WorkloadLock      = "clock_%s"
	PodLock           = "plock_%s"
	NodeOperationLock = "cnode_op_%s_%s"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Cluster

type Cluster interface {
	WatchServiceStatus(context.Context) (<-chan types.ServiceStatus, error)
	ListNetworks(ctx context.Context, podname, driver string) ([]*enginetypes.Network, error)
	ConnectNetwork(ctx context.Context, network, target, ipv4, ipv6 string) ([]string, error)
	DisconnectNetwork(ctx context.Context, network, target string, force bool) error
	AddPod(ctx context.Context, podname, desc string) (*types.Pod, error)
	RemovePod(ctx context.Context, podname string) error
	GetPod(ctx context.Context, podname string) (*types.Pod, error)
	ListPods(ctx context.Context) ([]*types.Pod, error)
	PodResource(ctx context.Context, podname string) (chan *types.NodeResourceInfo, error)
	AddNode(context.Context, *types.AddNodeOptions) (*types.Node, error)
	RemoveNode(ctx context.Context, nodename string) error
	ListPodNodes(context.Context, *types.ListNodesOptions) (<-chan *types.Node, error)
	GetNode(ctx context.Context, nodename string) (*types.Node, error)
	GetNodeEngineInfo(ctx context.Context, nodename string) (*enginetypes.Info, error)
	SetNode(ctx context.Context, opts *types.SetNodeOptions) (*types.Node, error)
	SetNodeStatus(ctx context.Context, nodename string, ttl int64) error
	GetNodeStatus(ctx context.Context, nodename string) (*types.NodeStatus, error)
	NodeStatusStream(ctx context.Context) chan *types.NodeStatus
	NodeResource(ctx context.Context, nodename string, fix bool) (*types.NodeResourceInfo, error)
	CalculateCapacity(context.Context, *types.DeployOptions) (*types.CapacityMessage, error)
	GetWorkload(ctx context.Context, id string) (*types.Workload, error)
	GetWorkloads(ctx context.Context, IDs []string) ([]*types.Workload, error)
	ListWorkloads(ctx context.Context, opts *types.ListWorkloadsOptions) ([]*types.Workload, error)
	ListNodeWorkloads(ctx context.Context, nodename string, labels map[string]string) ([]*types.Workload, error)
	GetWorkloadsStatus(ctx context.Context, IDs []string) ([]*types.StatusMeta, error)
	SetWorkloadsStatus(ctx context.Context, status []*types.StatusMeta, ttls map[string]int64) ([]*types.StatusMeta, error)
	WorkloadStatusStream(ctx context.Context, appname, entrypoint, nodename string, labels map[string]string) chan *types.WorkloadStatus
	Copy(ctx context.Context, opts *types.CopyOptions) (chan *types.CopyMessage, error)
	Send(ctx context.Context, opts *types.SendOptions) (chan *types.SendMessage, error)
	SendLargeFile(ctx context.Context, opts chan *types.SendLargeFileOptions) chan *types.SendMessage
	BuildImage(ctx context.Context, opts *types.BuildOptions) (chan *types.BuildImageMessage, error)
	CacheImage(ctx context.Context, opts *types.ImageOptions) (chan *types.CacheImageMessage, error)
	RemoveImage(ctx context.Context, opts *types.ImageOptions) (chan *types.RemoveImageMessage, error)
	ListImage(ctx context.Context, opts *types.ImageOptions) (chan *types.ListImageMessage, error)
	CreateWorkload(ctx context.Context, opts *types.DeployOptions) (chan *types.CreateWorkloadMessage, error)
	ReplaceWorkload(ctx context.Context, opts *types.ReplaceOptions) (chan *types.ReplaceWorkloadMessage, error)
	RemoveWorkload(ctx context.Context, IDs []string, force bool) (chan *types.RemoveWorkloadMessage, error)
	DissociateWorkload(ctx context.Context, IDs []string) (chan *types.DissociateWorkloadMessage, error)
	ControlWorkload(ctx context.Context, IDs []string, t string, force bool) (chan *types.ControlWorkloadMessage, error)
	ExecuteWorkload(ctx context.Context, opts *types.ExecuteWorkloadOptions, inCh <-chan []byte) chan *types.AttachWorkloadMessage
	ReallocResource(ctx context.Context, opts *types.ReallocOptions) error
	LogStream(ctx context.Context, opts *types.LogStreamOptions) (chan *types.LogStreamMessage, error)
	RunAndWait(ctx context.Context, opts *types.DeployOptions, inCh <-chan []byte) ([]string, <-chan *types.AttachWorkloadMessage, error)
	RawEngine(ctx context.Context, opts *types.RawEngineOptions) (*types.RawEngineMessage, error)
	Finalizer()

	// GetIdentifier returns the identifier used to label workloads owned by this cluster.
	GetIdentifier() string
}

Cluster is the eru cluster API implemented by calcium.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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