Manifest PUT should return 201 Created

Change handler, update descriptors table, regenerate API spec, and
update test.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
This commit is contained in:
Aaron Lehmann 2015-07-24 10:42:02 -07:00
parent c152ad7d2d
commit cf32056218
4 changed files with 6 additions and 6 deletions

View file

@ -1258,10 +1258,10 @@ The following parameters should be specified on the request:
###### On Success: Accepted ###### On Success: Created
``` ```
202 Accepted 201 Created
Location: <url> Location: <url>
Content-Length: 0 Content-Length: 0
Docker-Content-Digest: <digest> Docker-Content-Digest: <digest>

View file

@ -523,7 +523,7 @@ var routeDescriptors = []RouteDescriptor{
Successes: []ResponseDescriptor{ Successes: []ResponseDescriptor{
{ {
Description: "The manifest has been accepted by the registry and is stored under the specified `name` and `tag`.", Description: "The manifest has been accepted by the registry and is stored under the specified `name` and `tag`.",
StatusCode: http.StatusAccepted, StatusCode: http.StatusCreated,
Headers: []ParameterDescriptor{ Headers: []ParameterDescriptor{
{ {
Name: "Location", Name: "Location",

View file

@ -423,7 +423,7 @@ func TestManifestAPI(t *testing.T) {
checkErr(t, err, "building manifest url") checkErr(t, err, "building manifest url")
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.StatusCreated)
checkHeaders(t, resp, http.Header{ checkHeaders(t, resp, http.Header{
"Location": []string{manifestDigestURL}, "Location": []string{manifestDigestURL},
"Docker-Content-Digest": []string{dgst.String()}, "Docker-Content-Digest": []string{dgst.String()},
@ -432,7 +432,7 @@ func TestManifestAPI(t *testing.T) {
// -------------------- // --------------------
// Push by digest -- should get same result // Push by digest -- should get same result
resp = putManifest(t, "putting signed manifest", manifestDigestURL, signedManifest) resp = putManifest(t, "putting signed manifest", manifestDigestURL, signedManifest)
checkResponse(t, "putting signed manifest", resp, http.StatusAccepted) checkResponse(t, "putting signed manifest", resp, http.StatusCreated)
checkHeaders(t, resp, http.Header{ checkHeaders(t, resp, http.Header{
"Location": []string{manifestDigestURL}, "Location": []string{manifestDigestURL},
"Docker-Content-Digest": []string{dgst.String()}, "Docker-Content-Digest": []string{dgst.String()},

View file

@ -183,7 +183,7 @@ func (imh *imageManifestHandler) PutImageManifest(w http.ResponseWriter, r *http
w.Header().Set("Location", location) w.Header().Set("Location", location)
w.Header().Set("Docker-Content-Digest", imh.Digest.String()) w.Header().Set("Docker-Content-Digest", imh.Digest.String())
w.WriteHeader(http.StatusAccepted) w.WriteHeader(http.StatusCreated)
} }
// DeleteImageManifest removes the image with the given tag from the registry. // DeleteImageManifest removes the image with the given tag from the registry.