From cb2ed911a0b6516b24bbeb19fb2517028719feac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arda=20G=C3=BC=C3=A7l=C3=BC?= Date: Fri, 2 Jan 2026 15:54:30 +0300 Subject: [PATCH 1/2] Internalize removed schema1 manifest type into library-go --- go.mod | 2 +- .../image/distribution}/manifest/schema1/config_builder.go | 0 pkg/image/distribution/manifest/schema1/doc.go | 5 +++++ .../image/distribution}/manifest/schema1/manifest.go | 0 .../distribution}/manifest/schema1/reference_builder.go | 0 .../v3 => pkg/image/distribution}/manifest/schema1/sign.go | 0 .../v3 => pkg/image/distribution}/manifest/schema1/verify.go | 0 pkg/image/registryclient/client.go | 2 +- vendor/modules.txt | 1 - 9 files changed, 7 insertions(+), 3 deletions(-) rename {vendor/github.com/distribution/distribution/v3 => pkg/image/distribution}/manifest/schema1/config_builder.go (100%) create mode 100644 pkg/image/distribution/manifest/schema1/doc.go rename {vendor/github.com/distribution/distribution/v3 => pkg/image/distribution}/manifest/schema1/manifest.go (100%) rename {vendor/github.com/distribution/distribution/v3 => pkg/image/distribution}/manifest/schema1/reference_builder.go (100%) rename {vendor/github.com/distribution/distribution/v3 => pkg/image/distribution}/manifest/schema1/sign.go (100%) rename {vendor/github.com/distribution/distribution/v3 => pkg/image/distribution}/manifest/schema1/verify.go (100%) diff --git a/go.mod b/go.mod index 1f13ac4bd6..5f08010fb4 100644 --- a/go.mod +++ b/go.mod @@ -7,6 +7,7 @@ require ( github.com/blang/semver/v4 v4.0.0 github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc github.com/distribution/distribution/v3 v3.0.0-20230511163743-f7717b7855ca + github.com/docker/libtrust v0.0.0-20160708172513-aabc10ec26b7 github.com/fvbommel/sortorder v1.1.0 github.com/go-ldap/ldap/v3 v3.4.11 github.com/gonum/graph v0.0.0-20170401004347-50b27dea7ebb @@ -62,7 +63,6 @@ require ( github.com/coreos/go-systemd/v22 v22.5.0 // indirect github.com/cyphar/filepath-securejoin v0.6.0 // indirect github.com/docker/go-metrics v0.0.1 // indirect - github.com/docker/libtrust v0.0.0-20160708172513-aabc10ec26b7 // indirect github.com/emicklei/go-restful/v3 v3.12.2 // indirect github.com/felixge/fgprof v0.9.4 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect diff --git a/vendor/github.com/distribution/distribution/v3/manifest/schema1/config_builder.go b/pkg/image/distribution/manifest/schema1/config_builder.go similarity index 100% rename from vendor/github.com/distribution/distribution/v3/manifest/schema1/config_builder.go rename to pkg/image/distribution/manifest/schema1/config_builder.go diff --git a/pkg/image/distribution/manifest/schema1/doc.go b/pkg/image/distribution/manifest/schema1/doc.go new file mode 100644 index 0000000000..7e912de607 --- /dev/null +++ b/pkg/image/distribution/manifest/schema1/doc.go @@ -0,0 +1,5 @@ +// Package schema1 is a copy from "github.com/distribution/distribution/v3/manifest/schema1" +// This manifest type has been directly removed from distribution/distribution repository. +// However, we still observe some old images that are in this manifest type. At some point, it should be safe +// to entirely remove this schema from here as well. +package schema1 diff --git a/vendor/github.com/distribution/distribution/v3/manifest/schema1/manifest.go b/pkg/image/distribution/manifest/schema1/manifest.go similarity index 100% rename from vendor/github.com/distribution/distribution/v3/manifest/schema1/manifest.go rename to pkg/image/distribution/manifest/schema1/manifest.go diff --git a/vendor/github.com/distribution/distribution/v3/manifest/schema1/reference_builder.go b/pkg/image/distribution/manifest/schema1/reference_builder.go similarity index 100% rename from vendor/github.com/distribution/distribution/v3/manifest/schema1/reference_builder.go rename to pkg/image/distribution/manifest/schema1/reference_builder.go diff --git a/vendor/github.com/distribution/distribution/v3/manifest/schema1/sign.go b/pkg/image/distribution/manifest/schema1/sign.go similarity index 100% rename from vendor/github.com/distribution/distribution/v3/manifest/schema1/sign.go rename to pkg/image/distribution/manifest/schema1/sign.go diff --git a/vendor/github.com/distribution/distribution/v3/manifest/schema1/verify.go b/pkg/image/distribution/manifest/schema1/verify.go similarity index 100% rename from vendor/github.com/distribution/distribution/v3/manifest/schema1/verify.go rename to pkg/image/distribution/manifest/schema1/verify.go diff --git a/pkg/image/registryclient/client.go b/pkg/image/registryclient/client.go index c7f961c724..4b9331657e 100644 --- a/pkg/image/registryclient/client.go +++ b/pkg/image/registryclient/client.go @@ -18,7 +18,6 @@ import ( "k8s.io/klog/v2" "github.com/distribution/distribution/v3" - "github.com/distribution/distribution/v3/manifest/schema1" "github.com/distribution/distribution/v3/reference" "github.com/distribution/distribution/v3/registry/api/errcode" registryclient "github.com/distribution/distribution/v3/registry/client" @@ -27,6 +26,7 @@ import ( "github.com/distribution/distribution/v3/registry/client/transport" "github.com/opencontainers/go-digest" + "github.com/openshift/library-go/pkg/image/distribution/manifest/schema1" imagereference "github.com/openshift/library-go/pkg/image/reference" ) diff --git a/vendor/modules.txt b/vendor/modules.txt index f9b2308185..bc16aa2446 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -60,7 +60,6 @@ github.com/distribution/distribution/v3 github.com/distribution/distribution/v3/context github.com/distribution/distribution/v3/manifest github.com/distribution/distribution/v3/manifest/manifestlist -github.com/distribution/distribution/v3/manifest/schema1 github.com/distribution/distribution/v3/manifest/schema2 github.com/distribution/distribution/v3/metrics github.com/distribution/distribution/v3/reference From 3fc6249cdc6d033b83cd3715a445f83486c3ed0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arda=20G=C3=BC=C3=A7l=C3=BC?= Date: Mon, 5 Jan 2026 12:21:09 +0300 Subject: [PATCH 2/2] Internalize registry/client that is removed in distribution/v3 --- .../image/distribution}/client/auth/api_version.go | 0 .../image/distribution}/client/auth/challenge/addr.go | 0 .../distribution}/client/auth/challenge/authchallenge.go | 0 .../image/distribution}/client/auth/session.go | 6 +++--- .../image/distribution}/client/blob_writer.go | 0 .../registry => pkg/image/distribution}/client/errors.go | 2 +- .../image/distribution}/client/repository.go | 2 +- .../image/distribution}/client/transport/http_reader.go | 0 .../image/distribution}/client/transport/transport.go | 0 pkg/image/registryclient/client.go | 8 ++++---- pkg/image/registryclient/client_mirrored.go | 4 ++-- pkg/image/registryclient/client_test.go | 4 ++-- pkg/image/registryclient/credentials.go | 2 +- vendor/modules.txt | 4 ---- 14 files changed, 14 insertions(+), 18 deletions(-) rename {vendor/github.com/distribution/distribution/v3/registry => pkg/image/distribution}/client/auth/api_version.go (100%) rename {vendor/github.com/distribution/distribution/v3/registry => pkg/image/distribution}/client/auth/challenge/addr.go (100%) rename {vendor/github.com/distribution/distribution/v3/registry => pkg/image/distribution}/client/auth/challenge/authchallenge.go (100%) rename {vendor/github.com/distribution/distribution/v3/registry => pkg/image/distribution}/client/auth/session.go (98%) rename {vendor/github.com/distribution/distribution/v3/registry => pkg/image/distribution}/client/blob_writer.go (100%) rename {vendor/github.com/distribution/distribution/v3/registry => pkg/image/distribution}/client/errors.go (98%) rename {vendor/github.com/distribution/distribution/v3/registry => pkg/image/distribution}/client/repository.go (99%) rename {vendor/github.com/distribution/distribution/v3/registry => pkg/image/distribution}/client/transport/http_reader.go (100%) rename {vendor/github.com/distribution/distribution/v3/registry => pkg/image/distribution}/client/transport/transport.go (100%) diff --git a/vendor/github.com/distribution/distribution/v3/registry/client/auth/api_version.go b/pkg/image/distribution/client/auth/api_version.go similarity index 100% rename from vendor/github.com/distribution/distribution/v3/registry/client/auth/api_version.go rename to pkg/image/distribution/client/auth/api_version.go diff --git a/vendor/github.com/distribution/distribution/v3/registry/client/auth/challenge/addr.go b/pkg/image/distribution/client/auth/challenge/addr.go similarity index 100% rename from vendor/github.com/distribution/distribution/v3/registry/client/auth/challenge/addr.go rename to pkg/image/distribution/client/auth/challenge/addr.go diff --git a/vendor/github.com/distribution/distribution/v3/registry/client/auth/challenge/authchallenge.go b/pkg/image/distribution/client/auth/challenge/authchallenge.go similarity index 100% rename from vendor/github.com/distribution/distribution/v3/registry/client/auth/challenge/authchallenge.go rename to pkg/image/distribution/client/auth/challenge/authchallenge.go diff --git a/vendor/github.com/distribution/distribution/v3/registry/client/auth/session.go b/pkg/image/distribution/client/auth/session.go similarity index 98% rename from vendor/github.com/distribution/distribution/v3/registry/client/auth/session.go rename to pkg/image/distribution/client/auth/session.go index fe2128316b..2dbeed1f62 100644 --- a/vendor/github.com/distribution/distribution/v3/registry/client/auth/session.go +++ b/pkg/image/distribution/client/auth/session.go @@ -11,9 +11,9 @@ import ( "sync" "time" - "github.com/distribution/distribution/v3/registry/client" - "github.com/distribution/distribution/v3/registry/client/auth/challenge" - "github.com/distribution/distribution/v3/registry/client/transport" + "github.com/openshift/library-go/pkg/image/distribution/client" + "github.com/openshift/library-go/pkg/image/distribution/client/auth/challenge" + "github.com/openshift/library-go/pkg/image/distribution/client/transport" ) var ( diff --git a/vendor/github.com/distribution/distribution/v3/registry/client/blob_writer.go b/pkg/image/distribution/client/blob_writer.go similarity index 100% rename from vendor/github.com/distribution/distribution/v3/registry/client/blob_writer.go rename to pkg/image/distribution/client/blob_writer.go diff --git a/vendor/github.com/distribution/distribution/v3/registry/client/errors.go b/pkg/image/distribution/client/errors.go similarity index 98% rename from vendor/github.com/distribution/distribution/v3/registry/client/errors.go rename to pkg/image/distribution/client/errors.go index 8394ee0c20..06ac479185 100644 --- a/vendor/github.com/distribution/distribution/v3/registry/client/errors.go +++ b/pkg/image/distribution/client/errors.go @@ -8,7 +8,7 @@ import ( "net/http" "github.com/distribution/distribution/v3/registry/api/errcode" - "github.com/distribution/distribution/v3/registry/client/auth/challenge" + "github.com/openshift/library-go/pkg/image/distribution/client/auth/challenge" ) // ErrNoErrorsInBody is returned when an HTTP response body parses to an empty diff --git a/vendor/github.com/distribution/distribution/v3/registry/client/repository.go b/pkg/image/distribution/client/repository.go similarity index 99% rename from vendor/github.com/distribution/distribution/v3/registry/client/repository.go rename to pkg/image/distribution/client/repository.go index 31fc2e9237..a61ce5e876 100644 --- a/vendor/github.com/distribution/distribution/v3/registry/client/repository.go +++ b/pkg/image/distribution/client/repository.go @@ -17,10 +17,10 @@ import ( "github.com/distribution/distribution/v3" "github.com/distribution/distribution/v3/reference" v2 "github.com/distribution/distribution/v3/registry/api/v2" - "github.com/distribution/distribution/v3/registry/client/transport" "github.com/distribution/distribution/v3/registry/storage/cache" "github.com/distribution/distribution/v3/registry/storage/cache/memory" "github.com/opencontainers/go-digest" + "github.com/openshift/library-go/pkg/image/distribution/client/transport" ) // Registry provides an interface for calling Repositories, which returns a catalog of repositories. diff --git a/vendor/github.com/distribution/distribution/v3/registry/client/transport/http_reader.go b/pkg/image/distribution/client/transport/http_reader.go similarity index 100% rename from vendor/github.com/distribution/distribution/v3/registry/client/transport/http_reader.go rename to pkg/image/distribution/client/transport/http_reader.go diff --git a/vendor/github.com/distribution/distribution/v3/registry/client/transport/transport.go b/pkg/image/distribution/client/transport/transport.go similarity index 100% rename from vendor/github.com/distribution/distribution/v3/registry/client/transport/transport.go rename to pkg/image/distribution/client/transport/transport.go diff --git a/pkg/image/registryclient/client.go b/pkg/image/registryclient/client.go index 4b9331657e..21a9c85021 100644 --- a/pkg/image/registryclient/client.go +++ b/pkg/image/registryclient/client.go @@ -13,6 +13,10 @@ import ( "sync" "time" + registryclient "github.com/openshift/library-go/pkg/image/distribution/client" + "github.com/openshift/library-go/pkg/image/distribution/client/auth" + "github.com/openshift/library-go/pkg/image/distribution/client/auth/challenge" + "github.com/openshift/library-go/pkg/image/distribution/client/transport" "golang.org/x/time/rate" "k8s.io/klog/v2" @@ -20,10 +24,6 @@ import ( "github.com/distribution/distribution/v3" "github.com/distribution/distribution/v3/reference" "github.com/distribution/distribution/v3/registry/api/errcode" - registryclient "github.com/distribution/distribution/v3/registry/client" - "github.com/distribution/distribution/v3/registry/client/auth" - "github.com/distribution/distribution/v3/registry/client/auth/challenge" - "github.com/distribution/distribution/v3/registry/client/transport" "github.com/opencontainers/go-digest" "github.com/openshift/library-go/pkg/image/distribution/manifest/schema1" diff --git a/pkg/image/registryclient/client_mirrored.go b/pkg/image/registryclient/client_mirrored.go index de8bf77735..3ca1f64482 100644 --- a/pkg/image/registryclient/client_mirrored.go +++ b/pkg/image/registryclient/client_mirrored.go @@ -11,9 +11,9 @@ import ( "github.com/distribution/distribution/v3" "github.com/distribution/distribution/v3/registry/api/errcode" - "github.com/distribution/distribution/v3/registry/client" - "github.com/distribution/distribution/v3/registry/client/auth" "github.com/opencontainers/go-digest" + "github.com/openshift/library-go/pkg/image/distribution/client" + "github.com/openshift/library-go/pkg/image/distribution/client/auth" "github.com/openshift/library-go/pkg/image/reference" "k8s.io/klog/v2" diff --git a/pkg/image/registryclient/client_test.go b/pkg/image/registryclient/client_test.go index 296c823894..a3472aed7c 100644 --- a/pkg/image/registryclient/client_test.go +++ b/pkg/image/registryclient/client_test.go @@ -14,6 +14,7 @@ import ( "testing" "time" + "github.com/openshift/library-go/pkg/image/distribution/client/auth" "golang.org/x/time/rate" "k8s.io/client-go/rest" @@ -23,8 +24,7 @@ import ( "github.com/distribution/distribution/v3/manifest/schema2" "github.com/distribution/distribution/v3/reference" "github.com/distribution/distribution/v3/registry/api/errcode" - registryclient "github.com/distribution/distribution/v3/registry/client" - "github.com/distribution/distribution/v3/registry/client/auth" + registryclient "github.com/openshift/library-go/pkg/image/distribution/client" "github.com/opencontainers/go-digest" imagereference "github.com/openshift/library-go/pkg/image/reference" ) diff --git a/pkg/image/registryclient/credentials.go b/pkg/image/registryclient/credentials.go index 6ca8e49eda..2f0e83b831 100644 --- a/pkg/image/registryclient/credentials.go +++ b/pkg/image/registryclient/credentials.go @@ -4,7 +4,7 @@ import ( "net/url" "sync" - "github.com/distribution/distribution/v3/registry/client/auth" + "github.com/openshift/library-go/pkg/image/distribution/client/auth" ) var ( diff --git a/vendor/modules.txt b/vendor/modules.txt index bc16aa2446..22b286a3c8 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -65,10 +65,6 @@ github.com/distribution/distribution/v3/metrics github.com/distribution/distribution/v3/reference github.com/distribution/distribution/v3/registry/api/errcode github.com/distribution/distribution/v3/registry/api/v2 -github.com/distribution/distribution/v3/registry/client -github.com/distribution/distribution/v3/registry/client/auth -github.com/distribution/distribution/v3/registry/client/auth/challenge -github.com/distribution/distribution/v3/registry/client/transport github.com/distribution/distribution/v3/registry/storage/cache github.com/distribution/distribution/v3/registry/storage/cache/memory github.com/distribution/distribution/v3/uuid