engine

package
v0.1.2 Latest Latest
Warning

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

Go to latest
Published: Aug 27, 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 API

type API interface {
	Info(ctx context.Context) (*enginetypes.Info, error)
	Ping(ctx context.Context) error
	CloseConn() error
	GetParams() *enginetypes.Params

	Execute(ctx context.Context, ID string, config *enginetypes.ExecConfig) (execID string, stdout, stderr io.ReadCloser, stdin io.WriteCloser, err error)
	ExecResize(ctx context.Context, execID string, height, width uint) (err error)
	ExecExitCode(ctx context.Context, ID, execID string) (int, error)

	NetworkConnect(ctx context.Context, network, target, ipv4, ipv6 string) ([]string, error)
	NetworkDisconnect(ctx context.Context, network, target string, force bool) error
	NetworkList(ctx context.Context, drivers []string) ([]*enginetypes.Network, error)

	ImageList(ctx context.Context, image string) ([]*enginetypes.Image, error)
	ImageRemove(ctx context.Context, image string, force, prune bool) ([]string, error)
	ImagesPrune(ctx context.Context) error
	ImagePull(ctx context.Context, ref string, all bool) (io.ReadCloser, error)
	ImagePush(ctx context.Context, ref string) (io.ReadCloser, error)
	ImageBuild(ctx context.Context, input io.Reader, refs []string, platform string) (io.ReadCloser, error)
	ImageBuildCachePrune(ctx context.Context, all bool) (uint64, error)
	ImageLocalDigests(ctx context.Context, image string) ([]string, error)
	ImageRemoteDigest(ctx context.Context, image string) (string, error)
	ImageBuildFromExist(ctx context.Context, ID string, refs []string, user string) (string, error)

	BuildRefs(ctx context.Context, opts *enginetypes.BuildRefOptions) []string
	BuildContent(ctx context.Context, scm coresource.Source, opts *enginetypes.BuildContentOptions) (string, io.Reader, error)

	VirtualizationCreate(ctx context.Context, opts *enginetypes.VirtualizationCreateOptions) (*enginetypes.VirtualizationCreated, error)
	VirtualizationCopyTo(ctx context.Context, ID, target string, content []byte, uid, gid int, mode int64) error
	VirtualizationCopyChunkTo(ctx context.Context, ID, target string, size int64, content io.Reader, uid, gid int, mode int64) error
	VirtualizationStart(ctx context.Context, ID string) error
	VirtualizationStop(ctx context.Context, ID string, gracefulTimeout time.Duration) error
	VirtualizationRemove(ctx context.Context, ID string, volumes, force bool) error
	VirtualizationSuspend(ctx context.Context, ID string) error
	VirtualizationResume(ctx context.Context, ID string) error
	VirtualizationInspect(ctx context.Context, ID string) (*enginetypes.VirtualizationInfo, error)
	VirtualizationLogs(ctx context.Context, opts *enginetypes.VirtualizationLogStreamOptions) (stdout, stderr io.ReadCloser, err error)
	VirtualizationAttach(ctx context.Context, ID string, stream, openStdin bool) (stdout, stderr io.ReadCloser, stdin io.WriteCloser, err error)
	VirtualizationResize(ctx context.Context, ID string, height, width uint) error
	VirtualizationWait(ctx context.Context, ID, state string) (*enginetypes.VirtualizationWaitResult, error)
	VirtualizationUpdateResource(ctx context.Context, ID string, params resourcetypes.Resources) error
	VirtualizationCopyFrom(ctx context.Context, ID, path string) (content []byte, uid, gid int, mode int64, _ error)

	RawEngine(ctx context.Context, opts *enginetypes.RawEngineOptions) (*enginetypes.RawEngineResult, error)
}

API is the contract every runtime engine implements.

type NodeVerifier added in v0.1.1

type NodeVerifier interface {
	VerifyNode(ctx context.Context) error
}

NodeVerifier vets the node-side dependencies an engine's workloads need, once, as the node is added.

type VirtualizationResource

type VirtualizationResource struct {
	CPU           map[string]int64            `json:"cpu_map"` // cpu id to share
	Quota         float64                     `json:"cpu"`
	Memory        int64                       `json:"memory"`
	Storage       int64                       `json:"storage"`
	NUMANode      string                      `json:"numa_node"`
	Volumes       []string                    `json:"volumes"`
	VolumePlan    map[string]map[string]int64 `json:"volume_plan"`
	VolumeChanged bool                        `json:"volume_changed"`
	IOPSOptions   map[string]string           `json:"iops_options"` // format: {device_name: "read-IOPS:write-IOPS:read-bps:write-bps"}
	Remap         bool                        `json:"remap"`
}

VirtualizationResource is the decoded per-engine resource view of a workload.

func (*VirtualizationResource) Decode

func (r *VirtualizationResource) Decode(engineParams resourcetypes.Resources) error

Decode merges every plugin's engine params into r.

Directories

Path Synopsis
Package cni lists the networks a node's CNI conf dir declares.
Package cni lists the networks a node's CNI conf dir declares.
Package journal renders core's log stream options as journalctl arguments.
Package journal renders core's log stream options as journalctl arguments.
sshrunnertest
Package sshrunnertest is a scripted runner every engine's tests drive a node with.
Package sshrunnertest is a scripted runner every engine's tests drive a node with.

Jump to

Keyboard shortcuts

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