Skip to content

Commit b3160e8

Browse files
authored
Merge pull request moby#50036 from thaJeztah/buildkit_rm_schema1
builder-next: remove support for deprecated schema1 images
2 parents 7148c6a + e8c2698 commit b3160e8

File tree

1 file changed

+6
-19
lines changed
  • builder/builder-next/adapters/containerimage

1 file changed

+6
-19
lines changed

builder/builder-next/adapters/containerimage/pull.go

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ import (
1919
"github.com/containerd/containerd/v2/core/leases"
2020
"github.com/containerd/containerd/v2/core/remotes"
2121
"github.com/containerd/containerd/v2/core/remotes/docker"
22-
"github.com/containerd/containerd/v2/core/remotes/docker/schema1" //nolint:staticcheck // Ignore SA1019: "github.com/containerd/containerd/remotes/docker/schema1" is deprecated: use images formatted in Docker Image Manifest v2, Schema 2, or OCI Image Spec v1.
2322
"github.com/containerd/containerd/v2/pkg/gc"
2423
c8dreference "github.com/containerd/containerd/v2/pkg/reference"
2524
cerrdefs "github.com/containerd/errdefs"
@@ -518,18 +517,13 @@ func (p *puller) Snapshot(ctx context.Context, g session.Group) (cache.Immutable
518517

519518
var nonLayers []digest.Digest
520519

521-
var (
522-
schema1Converter *schema1.Converter
523-
handlers []c8dimages.Handler
524-
)
520+
var handlers []c8dimages.Handler
525521
if p.desc.MediaType == c8dimages.MediaTypeDockerSchema1Manifest {
526-
schema1Converter, err = schema1.NewConverter(p.is.ContentStore, fetcher)
527-
if err != nil {
528-
stopProgress()
529-
return nil, err
530-
}
531-
handlers = append(handlers, schema1Converter)
532-
522+
stopProgress()
523+
// similar to [github.com/docker/docker/distribution/DeprecatedSchema1ImageError]
524+
errMsg := "support for Docker Image Format v1 and Docker Image manifest version 2, schema 1 has been removed in Docker Engine v28.2. " +
525+
"More information at https://docs.docker.com/go/deprecated-image-specs/"
526+
return nil, cerrdefs.ErrInvalidArgument.WithMessage(errMsg)
533527
// TODO: Optimize to do dispatch and integrate pulling with download manager,
534528
// leverage existing blob mapping and layer storage
535529
} else {
@@ -568,13 +562,6 @@ func (p *puller) Snapshot(ctx context.Context, g session.Group) (cache.Immutable
568562
}
569563
defer stopProgress()
570564

571-
if schema1Converter != nil {
572-
p.desc, err = schema1Converter.Convert(ctx)
573-
if err != nil {
574-
return nil, err
575-
}
576-
}
577-
578565
mfst, err := c8dimages.Manifest(ctx, p.is.ContentStore, p.desc, platform)
579566
if err != nil {
580567
return nil, err

0 commit comments

Comments
 (0)