package worker
import "github.com/moby/buildkit/worker"
Index ¶
- Constants
- func NewCacheResultStorage(wc *Controller) solver.CacheResultStorage
- func NewWorkerRefResult(ref cache.ImmutableRef, worker Worker) solver.Result
- type Controller
- func (c *Controller) Add(w Worker) error
- func (c *Controller) Get(id string) (Worker, error)
- func (c *Controller) GetDefault() (Worker, error)
- func (c *Controller) List(filterStrings ...string) ([]Worker, error)
- func (c *Controller) WorkerInfos() []client.WorkerInfo
- type Infos
- type Worker
- type WorkerRef
Constants ¶
const ( LabelExecutor = labelPrefix + "executor" // "oci" or "containerd" LabelSnapshotter = labelPrefix + "snapshotter" // containerd snapshotter name ("overlay", "native", ...) LabelHostname = labelPrefix + "hostname" )
Pre-defined label keys
Functions ¶
func NewCacheResultStorage ¶
func NewCacheResultStorage(wc *Controller) solver.CacheResultStorage
func NewWorkerRefResult ¶
func NewWorkerRefResult(ref cache.ImmutableRef, worker Worker) solver.Result
Types ¶
type Controller ¶
type Controller struct {
// contains filtered or unexported fields
}
Controller holds worker instances. Currently, only local workers are supported.
func (*Controller) Add ¶
func (c *Controller) Add(w Worker) error
Add adds a local worker
func (*Controller) Get ¶
func (c *Controller) Get(id string) (Worker, error)
func (*Controller) GetDefault ¶
func (c *Controller) GetDefault() (Worker, error)
GetDefault returns the default local worker
func (*Controller) List ¶
func (c *Controller) List(filterStrings ...string) ([]Worker, error)
List lists workers
func (*Controller) WorkerInfos ¶
func (c *Controller) WorkerInfos() []client.WorkerInfo
type Infos ¶
type Infos interface { GetDefault() (Worker, error) WorkerInfos() []client.WorkerInfo }
type Worker ¶
type Worker interface { // ID needs to be unique in the cluster ID() string Labels() map[string]string Platforms(noCache bool) []specs.Platform GCPolicy() []client.PruneInfo LoadRef(ctx context.Context, id string, hidden bool) (cache.ImmutableRef, error) // ResolveOp resolves Vertex.Sys() to Op implementation. ResolveOp(v solver.Vertex, s frontend.FrontendLLBBridge, sm *session.Manager) (solver.Op, error) ResolveImageConfig(ctx context.Context, ref string, opt llb.ResolveImageConfigOpt, sm *session.Manager, g session.Group) (digest.Digest, []byte, error) DiskUsage(ctx context.Context, opt client.DiskUsageInfo) ([]*client.UsageInfo, error) Exporter(name string, sm *session.Manager) (exporter.Exporter, error) Prune(ctx context.Context, ch chan client.UsageInfo, opt ...client.PruneInfo) error FromRemote(ctx context.Context, remote *solver.Remote) (cache.ImmutableRef, error) PruneCacheMounts(ctx context.Context, ids []string) error ContentStore() content.Store Executor() executor.Executor CacheManager() cache.Manager MetadataStore() *metadata.Store }
type WorkerRef ¶
type WorkerRef struct { ImmutableRef cache.ImmutableRef Worker Worker }
func (*WorkerRef) GetRemote ¶
func (wr *WorkerRef) GetRemote(ctx context.Context, createIfNeeded bool, compressionType compression.Type, g session.Group) (*solver.Remote, error)
GetRemote method abstracts ImmutableRef's GetRemote to allow a Worker to override. This is needed for moby integration. Use this method instead of calling ImmutableRef.GetRemote() directly.
func (*WorkerRef) ID ¶
Source Files ¶
cacheresult.go filter.go result.go worker.go workercontroller.go
Directories ¶
Path | Synopsis |
---|---|
worker/base | |
worker/containerd | |
worker/runc | |
worker/tests |
- Version
- v0.8.1
- Published
- Dec 15, 2020
- Platform
- js/wasm
- Imports
- 19 packages
- Last checked
- 9 minutes ago –
Tools for package owners.