MCPcopy Create free account
hub / github.com/docker/docker-agent / resolveVersion

Function resolveVersion

pkg/toolinstall/resolver.go:205–217  ·  view source on GitHub ↗

resolveVersion determines the latest version for a package.

(ctx context.Context, registry *Registry, pkg *Package)

Source from the content-addressed store, hash-verified

203
204// resolveVersion determines the latest version for a package.
205func resolveVersion(ctx context.Context, registry *Registry, pkg *Package) (string, error) {
206 // Check for a version_filter with a "startsWith" prefix (multi-module repos).
207 if prefix := extractVersionPrefix(pkg.VersionFilter); prefix != "" {
208 return registry.latestVersionFiltered(ctx, pkg.RepoOwner, pkg.RepoName, prefix)
209 }
210
211 // For go types, use "latest" and let go install resolve it.
212 if pkg.IsGoPackage() {
213 return "latest", nil
214 }
215
216 return registry.latestVersion(ctx, pkg.RepoOwner, pkg.RepoName)
217}
218
219// extractVersionPrefix parses an aqua version_filter expression like
220// 'Version startsWith "gopls/"' and returns the prefix string.

Callers 1

doInstallFunction · 0.85

Calls 4

extractVersionPrefixFunction · 0.85
latestVersionFilteredMethod · 0.80
IsGoPackageMethod · 0.80
latestVersionMethod · 0.80

Tested by

no test coverage detected