diff options
author | Igor Korolev <missterr@gmail.com> | 2021-02-10 23:15:48 +0400 |
---|---|---|
committer | Matthew Heon <mheon@redhat.com> | 2021-02-18 11:03:34 -0500 |
commit | b4678177828bf1a5fddffa06a8ebce8fec077f47 (patch) | |
tree | dac41c6e1f3707f7c122035c03c136e7326c703a | |
parent | 0e3a3efee50aea4d811b3bacf5ffa9569f950f68 (diff) | |
download | podman-b4678177828bf1a5fddffa06a8ebce8fec077f47.tar.gz podman-b4678177828bf1a5fddffa06a8ebce8fec077f47.tar.bz2 podman-b4678177828bf1a5fddffa06a8ebce8fec077f47.zip |
apiv2: handle docker-java clients pulling
When docker-java calls images/create?fromImage=x, it expects two things
for a successful response: that both "error" and "errorDetail" are not
set, and that the "progress" message contains one of five hard-coded
strings ("Download complete" being one of them).
Signed-off-by: Igor Korolev <missterr@gmail.com>
-rw-r--r-- | pkg/api/handlers/compat/images.go | 4 | ||||
-rw-r--r-- | test/apiv2/10-images.at | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/pkg/api/handlers/compat/images.go b/pkg/api/handlers/compat/images.go index 05d4e2f65..ab2b1f471 100644 --- a/pkg/api/handlers/compat/images.go +++ b/pkg/api/handlers/compat/images.go @@ -255,12 +255,12 @@ func CreateImageFromImage(w http.ResponseWriter, r *http.Request) { // Success utils.WriteResponse(w, http.StatusOK, struct { Status string `json:"status"` - Error string `json:"error"` + Error string `json:"error,omitempty"` Progress string `json:"progress"` ProgressDetail map[string]string `json:"progressDetail"` Id string `json:"id"` // nolint }{ - Status: fmt.Sprintf("pulling image (%s) from %s", img.Tag, strings.Join(img.Names(), ", ")), + Status: fmt.Sprintf("pulling image (%s) from %s (Download complete)", img.Tag, strings.Join(img.Names(), ", ")), ProgressDetail: map[string]string{}, Id: img.ID(), }) diff --git a/test/apiv2/10-images.at b/test/apiv2/10-images.at index 30090d806..a650cf958 100644 --- a/test/apiv2/10-images.at +++ b/test/apiv2/10-images.at @@ -41,7 +41,7 @@ t GET images/$iid/json 200 \ .Id=sha256:$iid \ .RepoTags[0]=$IMAGE -t POST "images/create?fromImage=alpine" '' 200 +t POST "images/create?fromImage=alpine" '' 200 .error=null .status~".*Download complete.*" t POST "images/create?fromImage=alpine&tag=latest" '' 200 |