MCPcopy
hub / github.com/kubernetes/test-infra / resolveImage

Function resolveImage

releng/config-forker/pkg/forker.go:183–204  ·  view source on GitHub ↗

resolveImage validates an image tag via the ImageResolver if one is provided. Returns the image unchanged when the resolver is nil or the image contains variable references that cannot be resolved.

(
	ctx context.Context, resolver ImageResolver, image string,
)

Source from the content-addressed store, hash-verified

181// provided. Returns the image unchanged when the resolver is nil or
182// the image contains variable references that cannot be resolved.
183func resolveImage(
184 ctx context.Context, resolver ImageResolver, image string,
185) (string, error) {
186 if resolver == nil {
187 return image, nil
188 }
189
190 if strings.Contains(image, "${") {
191 return image, nil
192 }
193
194 resolved, err := resolver.Resolve(ctx, image)
195 if err != nil {
196 return "", fmt.Errorf("%w: %s: %w", ErrImageResolve, image, err)
197 }
198
199 if resolved != image {
200 log.Printf("Resolved image %s -> %s", image, resolved)
201 }
202
203 return resolved, nil
204}
205
206// processContainers applies env var fixes, image fixes, and replacement
207// annotations to all containers in a pod spec. It returns an error wrapping

Callers 4

processContainersFunction · 0.85

Calls 1

ResolveMethod · 0.65

Tested by 2