Manifest PUT should return 202 Accepted status

Signed-off-by: Stephen J Day <stephen.day@docker.com>
This commit is contained in:
Stephen J Day 2015-02-03 18:27:40 -08:00
parent c1c7d3dabf
commit f5c01af13f
3 changed files with 4 additions and 3 deletions

View file

@ -154,7 +154,7 @@ func (r *clientImpl) PutImageManifest(name, tag string, manifest *manifest.Signe
// TODO(bbland): handle other status codes, like 5xx errors // TODO(bbland): handle other status codes, like 5xx errors
switch { switch {
case response.StatusCode == http.StatusOK: case response.StatusCode == http.StatusOK || response.StatusCode == http.StatusAccepted:
return nil return nil
case response.StatusCode >= 400 && response.StatusCode < 500: case response.StatusCode >= 400 && response.StatusCode < 500:
var errors v2.Errors var errors v2.Errors

View file

@ -336,8 +336,7 @@ func TestManifestAPI(t *testing.T) {
} }
resp = putManifest(t, "putting signed manifest", manifestURL, signedManifest) resp = putManifest(t, "putting signed manifest", manifestURL, signedManifest)
checkResponse(t, "putting signed manifest", resp, http.StatusAccepted)
checkResponse(t, "putting signed manifest", resp, http.StatusOK)
resp, err = http.Get(manifestURL) resp, err = http.Get(manifestURL)
if err != nil { if err != nil {

View file

@ -92,6 +92,8 @@ func (imh *imageManifestHandler) PutImageManifest(w http.ResponseWriter, r *http
w.WriteHeader(http.StatusBadRequest) w.WriteHeader(http.StatusBadRequest)
return return
} }
w.WriteHeader(http.StatusAccepted)
} }
// DeleteImageManifest removes the image with the given tag from the registry. // DeleteImageManifest removes the image with the given tag from the registry.