Merge pull request #9757 from jwhonce/wip/load

Cleanup /libpod/images/load handler
This commit is contained in:
OpenShift Merge Robot
2021-03-22 08:18:56 -07:00
committed by GitHub
5 changed files with 43 additions and 29 deletions

View File

@@ -313,15 +313,23 @@ func (r *Runtime) LoadImageFromSingleImageArchive(ctx context.Context, writer io
func() (types.ImageReference, error) {
return layout.NewReference(inputFile, "")
},
func() (types.ImageReference, error) {
// This item needs to be last to break out of loop and report meaningful error message
return nil,
errors.New("payload does not match any of the supported image formats (oci-archive, oci-dir, docker-archive, docker-dir)")
},
} {
src, err := referenceFn()
if err == nil && src != nil {
newImages, err := r.ImageRuntime().LoadFromArchiveReference(ctx, src, signaturePolicy, writer)
if err == nil {
return getImageNames(newImages), nil
}
if err != nil {
saveErr = err
continue
}
newImages, err := r.ImageRuntime().LoadFromArchiveReference(ctx, src, signaturePolicy, writer)
if err == nil {
return getImageNames(newImages), nil
}
saveErr = err
}
return "", errors.Wrapf(saveErr, "error pulling image")
}