diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2019-08-05 16:58:43 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-08-05 16:58:43 +0200 |
commit | 3bffe77f824772b841080ea463324f5ae5c833d4 (patch) | |
tree | aa50637e899197c48deaee36928efd8b60593e0f /pkg | |
parent | 1c6d7eb9549f3a4a513dd529d4b6df532cf19118 (diff) | |
parent | c34e74755abad1daa76ca9318e6c7a4ff0937a4d (diff) | |
download | podman-3bffe77f824772b841080ea463324f5ae5c833d4.tar.gz podman-3bffe77f824772b841080ea463324f5ae5c833d4.tar.bz2 podman-3bffe77f824772b841080ea463324f5ae5c833d4.zip |
Merge pull request #3716 from baude/varlinkfixes2
various fixes for varlink endpoints
Diffstat (limited to 'pkg')
-rw-r--r-- | pkg/varlinkapi/images.go | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/pkg/varlinkapi/images.go b/pkg/varlinkapi/images.go index 338499bd4..b5a711dfd 100644 --- a/pkg/varlinkapi/images.go +++ b/pkg/varlinkapi/images.go @@ -198,6 +198,8 @@ func (i *LibpodAPI) BuildImage(call iopodman.VarlinkCall, config iopodman.BuildI if call.WantsMore() { call.Continues = true + } else { + return call.ReplyErrorOccurred("endpoint requires a more connection") } var newPathDockerFiles []string @@ -642,6 +644,7 @@ func (i *LibpodAPI) PullImage(call iopodman.VarlinkCall, name string) error { defer close(c) go func() { + var foundError bool if strings.HasPrefix(name, dockerarchive.Transport.Name()+":") { srcRef, err := alltransports.ParseImageName(name) if err != nil { @@ -649,6 +652,7 @@ func (i *LibpodAPI) PullImage(call iopodman.VarlinkCall, name string) error { } newImage, err := i.Runtime.ImageRuntime().LoadFromArchiveReference(getContext(), srcRef, "", output) if err != nil { + foundError = true c <- errors.Wrapf(err, "error pulling image from %q", name) } else { imageID = newImage[0].ID() @@ -656,12 +660,15 @@ func (i *LibpodAPI) PullImage(call iopodman.VarlinkCall, name string) error { } else { newImage, err := i.Runtime.ImageRuntime().New(getContext(), name, "", "", output, &dockerRegistryOptions, so, false, nil) if err != nil { + foundError = true c <- errors.Wrapf(err, "unable to pull %s", name) } else { imageID = newImage.ID() } } - c <- nil + if !foundError { + c <- nil + } }() var log []string |