Przeglądaj źródła

Merge pull request #46581 from vvoland/c8d-push-hide-jsons

c8d/push: Show progress only on blobs
Paweł Gronowski 1 rok temu
rodzic
commit
6040283f23
1 zmienionych plików z 8 dodań i 10 usunięć
  1. 8 10
      daemon/containerd/image_push.go

+ 8 - 10
daemon/containerd/image_push.go

@@ -129,24 +129,22 @@ func (i *ImageService) pushRef(ctx context.Context, targetRef reference.Named, m
 		return err
 	}
 
-	addChildrenToJobs := containerdimages.HandlerFunc(
+	addLayerJobs := containerdimages.HandlerFunc(
 		func(ctx context.Context, desc ocispec.Descriptor) ([]ocispec.Descriptor, error) {
-			children, err := containerdimages.Children(ctx, store, desc)
-			if err != nil {
-				return nil, err
-			}
-			for _, c := range children {
-				jobsQueue.Add(c)
+			switch {
+			case containerdimages.IsIndexType(desc.MediaType),
+				containerdimages.IsManifestType(desc.MediaType),
+				containerdimages.IsConfigType(desc.MediaType):
+			default:
+				jobsQueue.Add(desc)
 			}
 
-			jobsQueue.Add(desc)
-
 			return nil, nil
 		},
 	)
 
 	handlerWrapper := func(h images.Handler) images.Handler {
-		return containerdimages.Handlers(addChildrenToJobs, h)
+		return containerdimages.Handlers(addLayerJobs, h)
 	}
 
 	err = remotes.PushContent(ctx, pusher, target, store, limiter, platforms.All, handlerWrapper)