Shadow ORAS remote.Client interface

Signed-off-by: George Jenkins <gvjenkins@gmail.com>
pull/13499/head
George Jenkins 4 weeks ago
parent 11a9bf060b
commit 6dfaf955ee

@ -51,6 +51,13 @@ an underscore (_) in chart version tags when pushing to a registry and back to
a plus (+) when pulling from a registry.` a plus (+) when pulling from a registry.`
type ( type (
// RegistryClient shadows the ORAS remote.Client interface
// (hiding the ORAS type from Helm client visibility)
// https://pkg.go.dev/oras.land/oras-go/pkg/registry/remote#Client
RegistryClient interface {
Do(req *http.Request) (*http.Response, error)
}
// Client works with OCI-compliant registries // Client works with OCI-compliant registries
Client struct { Client struct {
debug bool debug bool
@ -61,7 +68,7 @@ type (
password string password string
out io.Writer out io.Writer
authorizer auth.Client authorizer auth.Client
registryAuthorizer *registryauth.Client registryAuthorizer RegistryClient
resolver func(ref registry.Reference) (remotes.Resolver, error) resolver func(ref registry.Reference) (remotes.Resolver, error)
httpClient *http.Client httpClient *http.Client
plainHTTP bool plainHTTP bool
@ -220,7 +227,7 @@ func ClientOptAuthorizer(authorizer auth.Client) ClientOption {
// can be used to override the default authorization mechanism. // can be used to override the default authorization mechanism.
// //
// Depending on the use-case you may need to set both ClientOptAuthorizer and ClientOptRegistryAuthorizer. // Depending on the use-case you may need to set both ClientOptAuthorizer and ClientOptRegistryAuthorizer.
func ClientOptRegistryAuthorizer(registryAuthorizer *registryauth.Client) ClientOption { func ClientOptRegistryAuthorizer(registryAuthorizer RegistryClient) ClientOption {
return func(client *Client) { return func(client *Client) {
client.registryAuthorizer = registryAuthorizer client.registryAuthorizer = registryAuthorizer
} }

Loading…
Cancel
Save