Added POST then PUT method
$ helm push --username mstore --password mstore --insecure-skip-tls-verify DIST/mstore-0.2.0.tgz oci://localhost:1025/mstore Pushed: localhost:1025/mstore/mstore:0.2.0 Digest: sha256:5a60793c9fc655e1940b00dac707632d7d3b32aad31a79acc41e65f9152e50fc
This commit is contained in:
+13
-3
@@ -217,9 +217,19 @@ func (oper *Operator) PutUpload(ctx context.Context, operatorID string, params *
|
||||
|
||||
}
|
||||
if contentLength != 0 {
|
||||
// TODO
|
||||
err = fmt.Errorf("Unexpected Content-Length header: %s", params.ContentLength)
|
||||
return res, http.StatusInternalServerError, err
|
||||
recsize, _, err := oper.store.WriteUpload(params.Reference, params.Reader)
|
||||
if err != nil {
|
||||
return res, http.StatusInternalServerError, err
|
||||
}
|
||||
if contentLength != 0 && recsize != contentLength {
|
||||
oper.store.RemoveUpload(params.Reference)
|
||||
err = fmt.Errorf("Mismatch upload recorded size and content length")
|
||||
return res, http.StatusInternalServerError, err
|
||||
}
|
||||
if err != nil {
|
||||
return res, http.StatusInternalServerError, err
|
||||
}
|
||||
res.Location = fmt.Sprintf("/v2/%s/blobs/%s", params.Name, params.Digest)
|
||||
}
|
||||
|
||||
err = oper.store.LinkUpload(params.Reference, params.Digest)
|
||||
|
||||
Reference in New Issue
Block a user