...

Package api

import "github.com/awslabs/amazon-ecr-credential-helper/ecr-login/api"
Overview
Index
Subdirectories

Overview ▾

type Auth

Auth credentials returned by ECR service to allow docker login

type Auth struct {
    ProxyEndpoint string
    Username      string
    Password      string
}

type Client

Client used for calling ECR service

type Client interface {
    GetCredentials(serverURL string) (*Auth, error)
    GetCredentialsByRegistryID(registryID string) (*Auth, error)
    ListCredentials() ([]*Auth, error)
}

type ClientFactory

ClientFactory is a factory for creating clients to interact with ECR

type ClientFactory interface {
    NewClient(awsConfig aws.Config) Client
    NewClientWithOptions(opts Options) Client
    NewClientFromRegion(region string) Client
    NewClientWithFipsEndpoint(region string) (Client, error)
    NewClientWithDefaults() Client
}

type DefaultClientFactory

DefaultClientFactory is a default implementation of the ClientFactory

type DefaultClientFactory struct{}

func (DefaultClientFactory) NewClient

func (defaultClientFactory DefaultClientFactory) NewClient(awsConfig aws.Config) Client

NewClient Create new client with AWS Config

func (DefaultClientFactory) NewClientFromRegion

func (defaultClientFactory DefaultClientFactory) NewClientFromRegion(region string) Client

NewClientFromRegion uses the region to create the client

func (DefaultClientFactory) NewClientWithDefaults

func (defaultClientFactory DefaultClientFactory) NewClientWithDefaults() Client

NewClientWithDefaults creates the client and defaults region

func (DefaultClientFactory) NewClientWithFipsEndpoint

func (defaultClientFactory DefaultClientFactory) NewClientWithFipsEndpoint(region string) (Client, error)

NewClientWithFipsEndpoint overrides the default ECR service endpoint in a given region to use the FIPS endpoint

func (DefaultClientFactory) NewClientWithOptions

func (defaultClientFactory DefaultClientFactory) NewClientWithOptions(opts Options) Client

NewClientWithOptions Create new client with Options

type ECRAPI

type ECRAPI interface {
    GetAuthorizationToken(context.Context, *ecr.GetAuthorizationTokenInput, ...func(*ecr.Options)) (*ecr.GetAuthorizationTokenOutput, error)
}

type ECRPublicAPI

type ECRPublicAPI interface {
    GetAuthorizationToken(context.Context, *ecrpublic.GetAuthorizationTokenInput, ...func(*ecrpublic.Options)) (*ecrpublic.GetAuthorizationTokenOutput, error)
}

type Options

Options makes the constructors more configurable

type Options struct {
    Config   aws.Config
    CacheDir string
}

type Registry

Registry in ECR

type Registry struct {
    Service Service
    ID      string
    FIPS    bool
    Region  string
}

func ExtractRegistry

func ExtractRegistry(input string) (*Registry, error)

ExtractRegistry returns the ECR registry behind a given service endpoint

type Service

type Service string
const (
    ServiceECR       Service = "ecr"
    ServiceECRPublic Service = "ecr-public"
)

Subdirectories

Name Synopsis
..
mocks