base

package
v0.12.4 Latest Latest
Warning

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

Go to latest
Published: Jan 17, 2024 License: Apache-2.0 Imports: 50 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ID

func ID(root string) (string, error)

ID reads the worker id from the `workerid` file. If not exist, it creates a random one,

Types

type Worker

type Worker struct {
	WorkerOpt
	CacheMgr      cache.Manager
	SourceManager *source.Manager

	ImageSource     *containerimage.Source
	OCILayoutSource *containerimage.Source
	// contains filtered or unexported fields
}

Worker is a local worker instance with dedicated snapshotter, cache, and so on. TODO: s/Worker/OpWorker/g ?

func NewWorker

func NewWorker(ctx context.Context, opt WorkerOpt) (*Worker, error)

NewWorker instantiates a local worker

func (*Worker) BuildkitVersion

func (w *Worker) BuildkitVersion() client.BuildkitVersion

func (*Worker) CacheManager

func (w *Worker) CacheManager() cache.Manager

func (*Worker) Close

func (w *Worker) Close() error

func (*Worker) ContentStore

func (w *Worker) ContentStore() *containerdsnapshot.Store

func (*Worker) DiskUsage

func (w *Worker) DiskUsage(ctx context.Context, opt client.DiskUsageInfo) ([]*client.UsageInfo, error)

func (*Worker) Executor

func (w *Worker) Executor() executor.Executor

func (*Worker) Exporter

func (w *Worker) Exporter(name string, sm *session.Manager) (exporter.Exporter, error)

func (*Worker) FromRemote

func (w *Worker) FromRemote(ctx context.Context, remote *solver.Remote) (ref cache.ImmutableRef, err error)

func (*Worker) GCPolicy

func (w *Worker) GCPolicy() []client.PruneInfo

func (*Worker) ID

func (w *Worker) ID() string

func (*Worker) Labels

func (w *Worker) Labels() map[string]string

func (*Worker) LeaseManager

func (w *Worker) LeaseManager() *leaseutil.Manager

func (*Worker) LoadRef

func (w *Worker) LoadRef(ctx context.Context, id string, hidden bool) (cache.ImmutableRef, error)

func (*Worker) Platforms

func (w *Worker) Platforms(noCache bool) []ocispecs.Platform

func (*Worker) Prune

func (w *Worker) Prune(ctx context.Context, ch chan client.UsageInfo, opt ...client.PruneInfo) error

func (*Worker) PruneCacheMounts

func (w *Worker) PruneCacheMounts(ctx context.Context, ids []string) error

func (*Worker) ResolveImageConfig

func (w *Worker) ResolveImageConfig(ctx context.Context, ref string, opt llb.ResolveImageConfigOpt, sm *session.Manager, g session.Group) (string, digest.Digest, []byte, error)

func (*Worker) ResolveOp

type WorkerOpt

type WorkerOpt struct {
	ID               string
	Labels           map[string]string
	Platforms        []ocispecs.Platform
	GCPolicy         []client.PruneInfo
	BuildkitVersion  client.BuildkitVersion
	NetworkProviders map[pb.NetMode]network.Provider
	Executor         executor.Executor
	Snapshotter      snapshot.Snapshotter
	ContentStore     *containerdsnapshot.Store
	Applier          diff.Applier
	Differ           diff.Comparer
	ImageStore       images.Store // optional
	RegistryHosts    docker.RegistryHosts
	IdentityMapping  *idtools.IdentityMapping
	LeaseManager     *leaseutil.Manager
	GarbageCollect   func(context.Context) (gc.Stats, error)
	ParallelismSem   *semaphore.Weighted
	MetadataStore    *metadata.Store
	MountPoolRoot    string
	ResourceMonitor  *resources.Monitor
}

WorkerOpt is specific to a worker. See also CommonOpt.

Jump to

Keyboard shortcuts

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