llbsolver

package
v0.29.0-rc1 Latest Latest
Warning

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

Go to latest
Published: Mar 25, 2026 License: Apache-2.0 Imports: 69 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 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
	ProvenanceEnv    map[string]any
}

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, exp ExporterRequest, ent []entitlements.Entitlement, post []Processor, internal bool, srcPol *spb.Policy, policySession string) (_ *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