worker

package
v27.3.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Sep 18, 2024 License: Apache-2.0 Imports: 52 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DefaultGCPolicy

func DefaultGCPolicy(p string, defaultKeepBytes int64) []client.PruneInfo

DefaultGCPolicy returns a default builder GC policy

Types

type ContainerdWorker

type ContainerdWorker struct {
	*base.Worker
	// contains filtered or unexported fields
}

ContainerdWorker is a local worker instance with dedicated snapshotter, cache, and so on.

func NewContainerdWorker

func NewContainerdWorker(ctx context.Context, wo base.WorkerOpt, callbacks exporter.BuildkitCallbacks) (*ContainerdWorker, error)

NewContainerdWorker instantiates a local worker.

func (*ContainerdWorker) Exporter

func (w *ContainerdWorker) Exporter(name string, sm *session.Manager) (bkexporter.Exporter, error)

Exporter returns exporter by name

type LayerAccess

type LayerAccess interface {
	GetDiffIDs(ctx context.Context, key string) ([]layer.DiffID, error)
	EnsureLayer(ctx context.Context, key string) ([]layer.DiffID, error)
}

LayerAccess provides access to a moby layer from a snapshot

type Opt

type Opt struct {
	ID                string
	Labels            map[string]string
	GCPolicy          []client.PruneInfo
	Executor          executor.Executor
	Snapshotter       snapshot.Snapshotter
	ContentStore      *containerdsnapshot.Store
	CacheManager      cache.Manager
	LeaseManager      *leaseutil.Manager
	ImageSource       *imageadapter.Source
	DownloadManager   *xfer.LayerDownloadManager
	V2MetadataService distmetadata.V2MetadataService
	Transport         nethttp.RoundTripper
	Exporter          exporter.Exporter
	Layers            LayerAccess
	Platforms         []ocispec.Platform
}

Opt defines a structure for creating a worker.

type Worker

type Worker struct {
	Opt
	SourceManager *source.Manager
}

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

func NewWorker

func NewWorker(opt Opt) (*Worker, error)

NewWorker instantiates a local worker

func (*Worker) BuildkitVersion

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

BuildkitVersion returns BuildKit version

func (*Worker) CacheManager

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

CacheManager returns cache.Manager for accessing local storage

func (*Worker) Close

func (w *Worker) Close() error

Close closes the worker and releases all resources

func (*Worker) ContentStore

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

ContentStore returns the wrapped content store

func (*Worker) DiskUsage

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

DiskUsage returns disk usage report

func (*Worker) Executor

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

Executor returns executor.Executor for running processes

func (*Worker) Exporter

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

Exporter returns exporter by name

func (*Worker) FromRemote

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

FromRemote converts a remote snapshot reference to a local one

func (*Worker) GCPolicy

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

GCPolicy returns automatic GC Policy

func (*Worker) GetRemotes

func (w *Worker) GetRemotes(ctx context.Context, ref cache.ImmutableRef, createIfNeeded bool, _ cacheconfig.RefConfig, all bool, s session.Group) ([]*solver.Remote, error)

GetRemotes returns the remote snapshot references given a local reference

func (*Worker) ID

func (w *Worker) ID() string

ID returns worker ID

func (*Worker) Labels

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

Labels returns map of all worker labels

func (*Worker) LeaseManager

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

LeaseManager returns the wrapped lease manager

func (*Worker) LoadRef

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

LoadRef loads a reference by ID

func (*Worker) Platforms

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

Platforms returns one or more platforms supported by the image.

func (*Worker) Prune

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

Prune deletes reclaimable build cache

func (*Worker) PruneCacheMounts

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

PruneCacheMounts removes the current cache snapshots for specified IDs

func (*Worker) ResolveImageConfig

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

ResolveImageConfig returns image config for an image

func (*Worker) ResolveOp

ResolveOp converts a LLB vertex into a LLB operation

func (*Worker) ResolveSourceMetadata

func (w *Worker) ResolveSourceMetadata(ctx context.Context, op *pb.SourceOp, opt sourceresolver.Opt, sm *session.Manager, g session.Group) (*sourceresolver.MetaResponse, error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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