summaryrefslogtreecommitdiff
path: root/pkg/api/handlers
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2021-12-02 22:08:50 +0100
committerGitHub <noreply@github.com>2021-12-02 22:08:50 +0100
commitf3a02304c2c2039c52add900894e79ac99bf0ed9 (patch)
tree2e26f3f979e14d0984b399d957301a5829c222e8 /pkg/api/handlers
parent87de344eeb8113849fdf451e864251d94222420d (diff)
parent8d6d9df40787be0292289bb9b81b10560459d794 (diff)
downloadpodman-f3a02304c2c2039c52add900894e79ac99bf0ed9.tar.gz
podman-f3a02304c2c2039c52add900894e79ac99bf0ed9.tar.bz2
podman-f3a02304c2c2039c52add900894e79ac99bf0ed9.zip
Merge pull request #12483 from vrothberg/fix-12468
compat API: push: report size of manifest
Diffstat (limited to 'pkg/api/handlers')
-rw-r--r--pkg/api/handlers/compat/images_push.go10
1 files changed, 8 insertions, 2 deletions
diff --git a/pkg/api/handlers/compat/images_push.go b/pkg/api/handlers/compat/images_push.go
index 5ecb429ae..3a84b5799 100644
--- a/pkg/api/handlers/compat/images_push.go
+++ b/pkg/api/handlers/compat/images_push.go
@@ -74,10 +74,16 @@ func PushImage(w http.ResponseWriter, r *http.Request) {
return
}
imageName = possiblyNormalizedName
- if _, _, err := runtime.LibimageRuntime().LookupImage(possiblyNormalizedName, nil); err != nil {
+ localImage, _, err := runtime.LibimageRuntime().LookupImage(possiblyNormalizedName, nil)
+ if err != nil {
utils.ImageNotFound(w, imageName, errors.Wrapf(err, "failed to find image %s", imageName))
return
}
+ rawManifest, _, err := localImage.Manifest(r.Context())
+ if err != nil {
+ utils.Error(w, "Something went wrong.", http.StatusBadRequest, err)
+ return
+ }
authconf, authfile, key, err := auth.GetCredentials(r)
if err != nil {
@@ -196,7 +202,7 @@ loop: // break out of for/select infinite loop
if tag == "" {
tag = "latest"
}
- report.Status = fmt.Sprintf("%s: digest: %s", tag, string(digestBytes))
+ report.Status = fmt.Sprintf("%s: digest: %s size: %d", tag, string(digestBytes), len(rawManifest))
if err := enc.Encode(report); err != nil {
logrus.Warnf("Failed to json encode error %q", err.Error())
}