Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var DefaultPackageSolversMap = PackageSolversMap{ APT: func(solver statesolver.StateSolver) PackageSolver { return NewAPTSolver(solver) }, APK: func(solver statesolver.StateSolver) PackageSolver { return NewAPKSolver(solver) }, }
DefaultPackageSolversMap contains the default set of package solver factories used by zbuild (and zbuilder).
Functions ¶
This section is empty.
Types ¶
type APTSolver ¶
type APTSolver struct {
// contains filtered or unexported fields
}
func NewAPTSolver ¶
func NewAPTSolver(solver statesolver.StateSolver) *APTSolver
type PackageSolver ¶
type PackageSolver interface { // ResolveVersions takes the reference of a container image where the // resolution should happen as first arg. It also takes a map of packages // to resolve associated with their version constraint. It returns a map of // packages associated with their resolved version. It returns an error if // one of the package cannot be resolved. // // The set of supported version constraint formats depends of each // implementation. ResolveVersions(ctx context.Context, imageRef string, pkgs map[string]string) (map[string]string, error) }
PackageSolver is an interface used by specialzed defkinds to lock system packages.
Note that PackageSolvers are structs that implement this interface instead of just being functions implementing ResolveVersions signature because gomock supports only interfaces.
func NewAPKSolver ¶
func NewAPKSolver(solver statesolver.StateSolver) PackageSolver
type PackageSolversMap ¶
type PackageSolversMap map[SolverType]func(statesolver.StateSolver) PackageSolver
PackageSolversMap is a list of SolverType associated to matching factories for PackageSolver implementations. Specialized defkind handlers use this to pin packages to specific versions.
func (PackageSolversMap) New ¶
func (pkgSolvers PackageSolversMap) New( solverType SolverType, solver statesolver.StateSolver, ) PackageSolver
New create a new PackageSolver for the given SolverType.
Click to show internal directories.
Click to hide internal directories.