Help us shape the future of Go! Take the 2026 Go Developer Survey

cluster

package
v0.1.7 Latest Latest
Warning

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

Go to latest
Published: Sep 29, 2026 License: MIT Imports: 3 Imported by: 5

Documentation

Index

Constants

View Source
const (
	Gitlab = "gitlab"
	Github = "github"
	// 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"

	EnvAppName     = "APP_NAME"
	EnvPod         = "ERU_POD"
	EnvNodeName    = "ERU_NODE_NAME"
	EnvWorkloadSeq = "ERU_WORKLOAD_SEQ"
)

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)

	// 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