package worker
import "github.com/docker/docker/builder/builder-next/worker"
Index ¶
- func DefaultGCPolicy(p string, defaultKeepBytes int64) []client.PruneInfo
- type ContainerdWorker
- func NewContainerdWorker(ctx context.Context, wo base.WorkerOpt) (*ContainerdWorker, error)
- func (w *ContainerdWorker) Exporter(name string, sm *session.Manager) (exporter.Exporter, error)
- type LayerAccess
- type Opt
- type Worker
- func NewWorker(opt Opt) (*Worker, error)
- func (w *Worker) BuildkitVersion() client.BuildkitVersion
- func (w *Worker) CacheManager() cache.Manager
- func (w *Worker) Close() error
- func (w *Worker) ContentStore() *containerdsnapshot.Store
- func (w *Worker) DiskUsage(ctx context.Context, opt client.DiskUsageInfo) ([]*client.UsageInfo, error)
- func (w *Worker) Executor() executor.Executor
- func (w *Worker) Exporter(name string, sm *session.Manager) (exporter.Exporter, error)
- func (w *Worker) FromRemote(ctx context.Context, remote *solver.Remote) (cache.ImmutableRef, error)
- func (w *Worker) GCPolicy() []client.PruneInfo
- func (w *Worker) GetRemotes(ctx context.Context, ref cache.ImmutableRef, createIfNeeded bool, _ cacheconfig.RefConfig, all bool, s session.Group) ([]*solver.Remote, error)
- func (w *Worker) ID() string
- func (w *Worker) Labels() map[string]string
- func (w *Worker) LeaseManager() *leaseutil.Manager
- func (w *Worker) LoadRef(ctx context.Context, id string, hidden bool) (cache.ImmutableRef, error)
- func (w *Worker) Platforms(noCache bool) []ocispec.Platform
- func (w *Worker) Prune(ctx context.Context, ch chan client.UsageInfo, info ...client.PruneInfo) error
- func (w *Worker) PruneCacheMounts(ctx context.Context, ids []string) error
- func (w *Worker) ResolveImageConfig(ctx context.Context, ref string, opt sourceresolver.Opt, sm *session.Manager, g session.Group) (digest.Digest, []byte, error)
- func (w *Worker) ResolveOp(v solver.Vertex, s frontend.FrontendLLBBridge, sm *session.Manager) (solver.Op, error)
- func (w *Worker) ResolveSourceMetadata(ctx context.Context, op *pb.SourceOp, opt sourceresolver.Opt, sm *session.Manager, g session.Group) (*sourceresolver.MetaResponse, error)
Functions ¶
func DefaultGCPolicy ¶
DefaultGCPolicy returns a default builder GC policy
Types ¶
type ContainerdWorker ¶
ContainerdWorker is a local worker instance with dedicated snapshotter, cache, and so on.
func NewContainerdWorker ¶
NewContainerdWorker instantiates a local worker.
func (*ContainerdWorker) Exporter ¶
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 ¶
Worker is a local worker instance with dedicated snapshotter, cache, and so on. TODO: s/Worker/OpWorker/g ?
func NewWorker ¶
NewWorker instantiates a local worker
func (*Worker) BuildkitVersion ¶
func (w *Worker) BuildkitVersion() client.BuildkitVersion
BuildkitVersion returns BuildKit version
func (*Worker) CacheManager ¶
CacheManager returns cache.Manager for accessing local storage
func (*Worker) Close ¶
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 ¶
Executor returns executor.Executor for running processes
func (*Worker) Exporter ¶
Exporter returns exporter by name
func (*Worker) FromRemote ¶
FromRemote converts a remote snapshot reference to a local one
func (*Worker) GCPolicy ¶
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 ¶
ID returns worker ID
func (*Worker) Labels ¶
Labels returns map of all worker labels
func (*Worker) LeaseManager ¶
LeaseManager returns the wrapped lease manager
func (*Worker) LoadRef ¶
LoadRef loads a reference by ID
func (*Worker) Platforms ¶
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 ¶
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 ¶
func (w *Worker) ResolveOp(v solver.Vertex, s frontend.FrontendLLBBridge, sm *session.Manager) (solver.Op, error)
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)
Source Files ¶
containerdworker.go gc.go gc_unix.go worker.go
Directories ¶
Path | Synopsis |
---|---|
builder/builder-next/worker/label |
- Version
- v26.1.4+incompatible
- Published
- Jun 5, 2024
- Platform
- js/wasm
- Imports
- 52 packages
- Last checked
- 1 hour ago –
Tools for package owners.