Help us shape the future of Go! Take the 2026 Go Developer Survey

llbsolver

package
v0.34.1 Latest Latest
Warning

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

Go to latest
Published: Oct 7, 2026 License: Apache-2.0 Imports: 77 Imported by: 30

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Load

func Load(ctx context.Context, def *pb.Definition, polEngine SourcePolicyEvaluator, opts ...LoadOpt) (solver.Edge, error)

Types

type Attestation added in v0.11.0

type Attestation = frontend.Attestation

type ExporterRequest

type ExporterRequest struct {
	Exporters             []exporter.ExporterInstance
	CacheExporters        []RemoteCacheExporter
	EnableSessionExporter bool
}

type LoadOpt

type LoadOpt func(*pb.Op, *pb.OpMetadata, *solver.VertexOptions) error

func NormalizeRuntimePlatforms added in v0.8.0

func NormalizeRuntimePlatforms() LoadOpt

func ValidateEntitlements

func ValidateEntitlements(ent entitlements.Set, cdiManager *cdidevices.Manager) LoadOpt

func WithCacheSources

func WithCacheSources(cms []solver.CacheManager) LoadOpt

func WithLinuxResourcesMetadata added in v0.31.0

func WithLinuxResourcesMetadata() LoadOpt

func WithValidateCaps

func WithValidateCaps() LoadOpt

type Opt added in v0.11.0

type Opt struct {
	CacheManager     solver.CacheManager
	CacheResolvers   map[string]remotecache.ResolveCacheImporterFunc
	Entitlements     []string
	Frontends        map[string]frontend.Frontend
	GatewayForwarder *controlgateway.GatewayForwarder
	SessionManager   *session.Manager
	WorkerController *worker.Controller
	HistoryQueue     *history.Queue
	ResourceMonitor  *resources.Monitor
	ProxyNetwork     bool
	ProvenanceEnv    map[string]any
	MeterProvider    metric.MeterProvider
}

Opt defines options for new Solver.

type Processor added in v0.11.0

type Processor func(ctx context.Context, result *Result, s *Solver, j *solver.Job, usage *resources.SysSampler) (*Result, error)

Processor defines a processing function to be applied after solving, but before exporting

type ProvenanceCreator added in v0.11.0

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

func NewProvenanceCreator added in v0.11.0

func NewProvenanceCreator(ctx context.Context, slsaVersion provenancetypes.ProvenanceSLSA, cp *provenance.Capture, res solver.ResultProxy, attrs map[string]string, j *solver.Job, usage *resources.SysSampler, customEnv map[string]any) (*ProvenanceCreator, error)

func (*ProvenanceCreator) Predicate added in v0.11.0

func (p *ProvenanceCreator) Predicate(ctx context.Context) (any, error)

func (*ProvenanceCreator) PredicateType added in v0.23.0

func (p *ProvenanceCreator) PredicateType() string

type RemoteCacheExporter added in v0.11.0

type RemoteCacheExporter struct {
	remotecache.Exporter
	solver.CacheExportMode
	IgnoreError bool
}

type ResolveWorkerFunc

type ResolveWorkerFunc func() (worker.Worker, error)

ResolveWorkerFunc returns default worker for the temporary default non-distributed use cases

type Result added in v0.11.0

type Result struct {
	*frontend.Result
	Provenance *provenance.Result
}

type Solver

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

func New

func New(opt Opt) (*Solver, error)

func (*Solver) Bridge

func (*Solver) Close added in v0.13.0

func (s *Solver) Close() error

func (*Solver) Solve

func (s *Solver) Solve(ctx context.Context, id string, sessionID string, req frontend.SolveRequest, compatibilityVersion int, exp ExporterRequest, ent []entitlements.Entitlement, post []Processor, internal bool, srcPol *spb.Policy, policySession string, proxyNetwork bool) (_ *client.SolveResponse, err error)

func (*Solver) Status

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

type SourcePolicyEvaluator added in v0.11.0

type SourcePolicyEvaluator interface {
	Evaluate(ctx context.Context, op *pb.Op) (bool, error)
}

SourcePolicyEvaluator evaluates source operations against configured policies.

Directories

Path Synopsis
ops

Jump to

Keyboard shortcuts

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