solver

package
v0.0.0-...-44b843d Latest Latest
Warning

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

Go to latest
Published: Mar 28, 2018 License: Apache-2.0 Imports: 29 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ToImmutableRef

func ToImmutableRef(ref Ref) (cache.ImmutableRef, bool)

Types

type CacheExporter

type CacheExporter interface {
	Export(context.Context) ([]cacheimport.CacheRecord, error)
}

type Index

type Index = types.Index

type Input

type Input = types.Input

type LLBOpt

type LLBOpt struct {
	WorkerController *worker.Controller
	Frontends        map[string]frontend.Frontend // used by nested invocations
	CacheExporter    *cacheimport.CacheExporter
	CacheImporter    *cacheimport.CacheImporter
}

type Op

type Op = types.Op

type Ref

type Ref = types.Ref

func OriginRef

func OriginRef(ref Ref) Ref

type ResolveOpFunc

type ResolveOpFunc func(Vertex) (Op, error)

ResolveOpFunc finds an Op implementation for a vertex

type SharedRef

type SharedRef struct {
	Ref
	// contains filtered or unexported fields
}

SharedRef is a wrapper around releasable that allows you to make new releasable child objects

func NewSharedRef

func NewSharedRef(main Ref) *SharedRef

func (*SharedRef) Clone

func (mr *SharedRef) Clone() Ref

func (*SharedRef) Release

func (mr *SharedRef) Release(ctx context.Context) error

func (*SharedRef) Sys

func (mr *SharedRef) Sys() Ref

type SolveRequest

type SolveRequest = types.SolveRequest

type Solver

type Solver struct {
	// contains filtered or unexported fields
}

func NewLLBOpSolver

func NewLLBOpSolver(opt LLBOpt) *Solver

func (*Solver) Solve

func (s *Solver) Solve(ctx context.Context, id string, req SolveRequest) error

func (*Solver) Status

func (s *Solver) Status(ctx context.Context, id string, statusChan chan *client.SolveStatus) error

func (*Solver) SubBuild

func (s *Solver) SubBuild(ctx context.Context, dgst digest.Digest, req SolveRequest) (Ref, error)

type Vertex

type Vertex = types.Vertex

type VertexEvaluator

type VertexEvaluator interface {
	Next(context.Context) (*VertexResult, error)
	Cancel() error
}

type VertexResult

type VertexResult struct {
	CacheKey  digest.Digest
	Reference Ref
}

type VertexSolver

type VertexSolver interface {
	CacheKey(ctx context.Context, index Index) (digest.Digest, error)
	OutputEvaluator(Index) (VertexEvaluator, error)
	Release() error
	Cache(Index, Ref) CacheExporter
}

type VertexWorkerDeterminer

type VertexWorkerDeterminer func(wc *worker.Controller, v Vertex) (worker.Worker, error)

FIXME: Also we need to track the workers of the inputs. TODO: REMOVE

Directories

Path Synopsis
Package pb is a generated protocol buffer package.
Package pb is a generated protocol buffer package.

Jump to

Keyboard shortcuts

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