Documentation
¶
Index ¶
- Variables
- type AuthorizationDataWire
- type Backend
- type CatalogData
- type CatalogDataInputWire
- type CatalogDataWire
- type Handler
- func (h *Handler) ChaosOperations() []string
- func (h *Handler) ChaosRegions() []string
- func (h *Handler) ChaosServiceName() string
- func (h *Handler) ExtractOperation(c *echo.Context) string
- func (h *Handler) ExtractResource(c *echo.Context) string
- func (h *Handler) GetSupportedOperations() []string
- func (h *Handler) Handler() echo.HandlerFunc
- func (h *Handler) MatchPriority() int
- func (h *Handler) Name() string
- func (h *Handler) Reset()
- func (h *Handler) Restore(ctx context.Context, data []byte) error
- func (h *Handler) RouteMatcher() service.Matcher
- func (h *Handler) Snapshot(ctx context.Context) []byte
- type Image
- type ImageDetail
- type ImageDetailWire
- type ImageFailure
- type ImageFailureWire
- type ImageIdentifier
- type ImageIdentifierWire
- type ImageTagDetail
- type ImageTagDetailWire
- type ImageWire
- type InMemoryBackend
- func (b *InMemoryBackend) AccountID() string
- func (b *InMemoryBackend) BatchCheckLayerAvailability(registryID, repositoryName string, layerDigests []string) ([]LayerInfo, []LayerFailure, error)
- func (b *InMemoryBackend) BatchDeleteImage(registryID, repositoryName string, imageIDs []ImageIdentifier) ([]ImageIdentifier, []ImageFailure, error)
- func (b *InMemoryBackend) CompleteLayerUpload(registryID, repositoryName, uploadID string, layerDigests []string) (string, error)
- func (b *InMemoryBackend) CreateRepository(name string, catalogData *CatalogData, tags map[string]string) (*Repository, error)
- func (b *InMemoryBackend) DeleteRepository(registryID, name string, force bool) (*Repository, error)
- func (b *InMemoryBackend) DeleteRepositoryPolicy(registryID, name string) (string, error)
- func (b *InMemoryBackend) DescribeImageTags(registryID, repositoryName string) ([]ImageTagDetail, error)
- func (b *InMemoryBackend) DescribeImages(registryID, repositoryName string, imageIDs []ImageIdentifier) ([]ImageDetail, error)
- func (b *InMemoryBackend) DescribeRegistries() ([]RegistryInfo, error)
- func (b *InMemoryBackend) DescribeRepositories(registryID string, names []string) ([]*Repository, error)
- func (b *InMemoryBackend) GetAuthorizationToken(_ context.Context) (string, int64, error)
- func (b *InMemoryBackend) GetRegistryCatalogData() (RegistryCatalogData, error)
- func (b *InMemoryBackend) GetRepositoryCatalogData(registryID, name string) (*CatalogData, error)
- func (b *InMemoryBackend) GetRepositoryPolicy(registryID, name string) (string, error)
- func (b *InMemoryBackend) InitiateLayerUpload(registryID, repositoryName string) (string, int64, error)
- func (b *InMemoryBackend) ListTagsForResource(resourceARN string) (map[string]string, error)
- func (b *InMemoryBackend) PutImage(registryID, repositoryName string, req PutImageRequest) (*Image, error)
- func (b *InMemoryBackend) PutRegistryCatalogData(displayName string) (RegistryCatalogData, error)
- func (b *InMemoryBackend) PutRepositoryCatalogData(registryID, name string, catalogData *CatalogData) (*CatalogData, error)
- func (b *InMemoryBackend) Reset()
- func (b *InMemoryBackend) Restore(ctx context.Context, data []byte) error
- func (b *InMemoryBackend) SetRepositoryPolicy(registryID, name, policyText string) (string, error)
- func (b *InMemoryBackend) Snapshot(ctx context.Context) []byte
- func (b *InMemoryBackend) TagResource(resourceARN string, tags map[string]string) error
- func (b *InMemoryBackend) UntagResource(resourceARN string, tagKeys []string) error
- func (b *InMemoryBackend) UploadLayerPart(registryID, repositoryName, uploadID string, firstByte, lastByte int64, ...) (int64, error)
- type LayerFailure
- type LayerFailureWire
- type LayerInfo
- type LayerWire
- type Provider
- type PutImageRequest
- type ReferencedImageDetailWire
- type RegistryAliasInfo
- type RegistryAliasWire
- type RegistryCatalogData
- type RegistryCatalogDataWire
- type RegistryInfo
- type RegistryWire
- type Repository
- type RepositoryWire
- type Snapshottable
- type TagWire
Constants ¶
This section is empty.
Variables ¶
var ( ErrRepositoryNotFound = awserr.New("RepositoryNotFoundException", awserr.ErrNotFound) ErrRepositoryAlreadyExists = awserr.New("RepositoryAlreadyExistsException", awserr.ErrAlreadyExists) ErrRepositoryNotEmpty = awserr.New("RepositoryNotEmptyException", awserr.ErrConflict) ErrRepositoryPolicyNotFound = awserr.New("RepositoryPolicyNotFoundException", awserr.ErrNotFound) ErrRegistryNotFound = awserr.New("RegistryNotFoundException", awserr.ErrNotFound) ErrInvalidParameter = awserr.New("InvalidParameterException", awserr.ErrInvalidParameter) ErrTooManyTags = awserr.New("TooManyTagsException", awserr.ErrInvalidParameter) ErrInvalidTagParameter = awserr.New("InvalidTagParameterException", awserr.ErrInvalidParameter) ErrUploadNotFound = awserr.New("UploadNotFoundException", awserr.ErrNotFound) ErrEmptyUpload = awserr.New("EmptyUploadException", awserr.ErrInvalidParameter) ErrLayerPartTooSmall = awserr.New("LayerPartTooSmallException", awserr.ErrInvalidParameter) ErrInvalidLayerPart = awserr.New("InvalidLayerPartException", awserr.ErrInvalidParameter) ErrLayerAlreadyExists = awserr.New("LayerAlreadyExistsException", awserr.ErrAlreadyExists) ErrLayersNotFound = awserr.New("LayersNotFoundException", awserr.ErrInvalidParameter) ErrInvalidLayer = awserr.New("InvalidLayerException", awserr.ErrInvalidParameter) ErrImageNotFound = awserr.New("ImageNotFoundException", awserr.ErrNotFound) ErrImageAlreadyExists = awserr.New("ImageAlreadyExistsException", awserr.ErrAlreadyExists) ErrImageDigestDoesNotMatch = awserr.New("ImageDigestDoesNotMatchException", awserr.ErrInvalidParameter) ErrImageTagAlreadyExists = awserr.New("ImageTagAlreadyExistsException", awserr.ErrConflict) ErrReferencedImagesMissing = awserr.New("ReferencedImagesNotFoundException", awserr.ErrNotFound) )
Sentinel errors, wrapped so callers can match with errors.Is while the message carries the real AWS exception name for classifyError.
var ErrNoSnapshot = errors.New("backend does not support restore")
ErrNoSnapshot is returned when a backend does not support snapshot/restore.
Functions ¶
This section is empty.
Types ¶
type AuthorizationDataWire ¶
type AuthorizationDataWire struct {
AuthorizationToken string `json:"authorizationToken,omitempty"`
ExpiresAt float64 `json:"expiresAt,omitempty"`
}
AuthorizationDataWire mirrors types.AuthorizationData.
type Backend ¶
type Backend interface {
AccountID() string
CreateRepository(name string, catalogData *CatalogData, tags map[string]string) (*Repository, error)
DescribeRepositories(registryID string, names []string) ([]*Repository, error)
DeleteRepository(registryID, name string, force bool) (*Repository, error)
GetRepositoryCatalogData(registryID, name string) (*CatalogData, error)
PutRepositoryCatalogData(registryID, name string, catalogData *CatalogData) (*CatalogData, error)
GetRepositoryPolicy(registryID, name string) (string, error)
SetRepositoryPolicy(registryID, name, policyText string) (string, error)
DeleteRepositoryPolicy(registryID, name string) (string, error)
TagResource(resourceARN string, tags map[string]string) error
UntagResource(resourceARN string, tagKeys []string) error
ListTagsForResource(resourceARN string) (map[string]string, error)
DescribeRegistries() ([]RegistryInfo, error)
GetRegistryCatalogData() (RegistryCatalogData, error)
PutRegistryCatalogData(displayName string) (RegistryCatalogData, error)
GetAuthorizationToken(ctx context.Context) (string, int64, error)
DescribeImages(registryID, repositoryName string, imageIDs []ImageIdentifier) ([]ImageDetail, error)
DescribeImageTags(registryID, repositoryName string) ([]ImageTagDetail, error)
PutImage(registryID, repositoryName string, req PutImageRequest) (*Image, error)
BatchDeleteImage(
registryID, repositoryName string, imageIDs []ImageIdentifier,
) ([]ImageIdentifier, []ImageFailure, error)
BatchCheckLayerAvailability(
registryID, repositoryName string, layerDigests []string,
) ([]LayerInfo, []LayerFailure, error)
InitiateLayerUpload(registryID, repositoryName string) (uploadID string, partSize int64, err error)
UploadLayerPart(
registryID, repositoryName, uploadID string, firstByte, lastByte int64, blob []byte,
) (lastByteReceived int64, err error)
CompleteLayerUpload(
registryID, repositoryName, uploadID string, layerDigests []string,
) (digest string, err error)
Reset()
}
Backend is the interface for the Amazon ECR Public backend.
type CatalogData ¶
type CatalogData struct {
AboutText string
Description string
UsageText string
LogoImageBlob []byte
Architectures []string
OperatingSystems []string
MarketplaceCertified bool
}
CatalogData is the publicly-visible Gallery metadata for a repository.
type CatalogDataInputWire ¶
type CatalogDataInputWire struct {
AboutText *string `json:"aboutText,omitempty"`
Description *string `json:"description,omitempty"`
UsageText *string `json:"usageText,omitempty"`
LogoImageBlob []byte `json:"logoImageBlob,omitempty"`
Architectures []string `json:"architectures,omitempty"`
OperatingSystems []string `json:"operatingSystems,omitempty"`
}
CatalogDataInputWire mirrors types.RepositoryCatalogDataInput.
type CatalogDataWire ¶
type CatalogDataWire struct {
AboutText string `json:"aboutText,omitempty"`
Description string `json:"description,omitempty"`
LogoURL string `json:"logoUrl,omitempty"`
UsageText string `json:"usageText,omitempty"`
Architectures []string `json:"architectures,omitempty"`
OperatingSystems []string `json:"operatingSystems,omitempty"`
MarketplaceCertified bool `json:"marketplaceCertified,omitempty"`
}
CatalogDataWire mirrors types.RepositoryCatalogData.
type Handler ¶
type Handler struct {
Backend Backend
AccountID string
DefaultRegion string
// contains filtered or unexported fields
}
Handler is the HTTP handler for the Amazon ECR Public control-plane API.
func NewHandler ¶
NewHandler creates a new Amazon ECR Public handler.
func (*Handler) ChaosOperations ¶
ChaosOperations returns all operations that can be fault-injected.
func (*Handler) ChaosRegions ¶
ChaosRegions returns all regions this handler handles. Amazon ECR Public is us-east-1-only, matching the real service.
func (*Handler) ChaosServiceName ¶
ChaosServiceName returns the lowercase AWS service name for fault rule matching.
func (*Handler) ExtractOperation ¶
ExtractOperation extracts the action name from the X-Amz-Target header.
func (*Handler) ExtractResource ¶
ExtractResource extracts the repository name from the request body, when present.
func (*Handler) GetSupportedOperations ¶
GetSupportedOperations returns the list of supported operations, matching aws-sdk-go-v2/service/ecrpublic@v1.47.1's client method set exactly.
func (*Handler) Handler ¶
func (h *Handler) Handler() echo.HandlerFunc
Handler returns the Echo handler function for Amazon ECR Public requests.
func (*Handler) MatchPriority ¶
MatchPriority returns the routing priority for header-exact matching.
func (*Handler) Restore ¶
Restore implements persistence by delegating to the backend if it supports it.
func (*Handler) RouteMatcher ¶
RouteMatcher matches requests carrying the SpencerFrontendService X-Amz-Target prefix.
type Image ¶
type Image struct {
ImagePushedAt time.Time
RepositoryName string
ImageDigest string
ImageManifest string
ImageManifestMediaType string
ArtifactMediaType string
RegistryID string
ImageSizeInBytes int64
}
Image is the domain model for a pushed image manifest, keyed by (repository, digest) via imageTableKey.
type ImageDetail ¶
type ImageDetail struct {
ImagePushedAt time.Time
ArtifactMediaType string
ImageDigest string
ImageManifestMediaType string
RegistryID string
RepositoryName string
ImageTags []string
ImageSizeInBytes int64
}
ImageDetail is a computed, request-time view of an Image annotated with its current tags; it is not itself persisted state.
type ImageDetailWire ¶
type ImageDetailWire struct {
ArtifactMediaType string `json:"artifactMediaType,omitempty"`
ImageDigest string `json:"imageDigest,omitempty"`
ImageManifestMediaType string `json:"imageManifestMediaType,omitempty"`
RegistryID string `json:"registryId,omitempty"`
RepositoryName string `json:"repositoryName,omitempty"`
ImageTags []string `json:"imageTags,omitempty"`
ImagePushedAt float64 `json:"imagePushedAt,omitempty"`
ImageSizeInBytes int64 `json:"imageSizeInBytes,omitempty"`
}
ImageDetailWire mirrors types.ImageDetail.
type ImageFailure ¶
type ImageFailure struct {
ImageID ImageIdentifier
FailureCode string
FailureReason string
}
ImageFailure describes an image that BatchDeleteImage could not process.
type ImageFailureWire ¶
type ImageFailureWire struct {
FailureCode string `json:"failureCode,omitempty"`
FailureReason string `json:"failureReason,omitempty"`
ImageID ImageIdentifierWire `json:"imageId"`
}
ImageFailureWire mirrors types.ImageFailure.
type ImageIdentifier ¶
ImageIdentifier identifies an image by digest, tag, or both.
type ImageIdentifierWire ¶
type ImageIdentifierWire struct {
ImageDigest string `json:"imageDigest,omitempty"`
ImageTag string `json:"imageTag,omitempty"`
}
ImageIdentifierWire mirrors types.ImageIdentifier.
type ImageTagDetail ¶
type ImageTagDetail struct {
CreatedAt time.Time
ImagePushedAt time.Time
ImageTag string
ArtifactMediaType string
ImageDigest string
ImageManifestMediaType string
ImageSizeInBytes int64
}
ImageTagDetail is a computed, request-time view of a single tag binding.
type ImageTagDetailWire ¶
type ImageTagDetailWire struct {
ImageDetail *ReferencedImageDetailWire `json:"imageDetail,omitempty"`
ImageTag string `json:"imageTag,omitempty"`
CreatedAt float64 `json:"createdAt,omitempty"`
}
ImageTagDetailWire mirrors types.ImageTagDetail.
type ImageWire ¶
type ImageWire struct {
ImageID ImageIdentifierWire `json:"imageId"`
ImageManifest string `json:"imageManifest,omitempty"`
ImageManifestMediaType string `json:"imageManifestMediaType,omitempty"`
RegistryID string `json:"registryId,omitempty"`
RepositoryName string `json:"repositoryName,omitempty"`
}
ImageWire mirrors types.Image.
type InMemoryBackend ¶
type InMemoryBackend struct {
// contains filtered or unexported fields
}
InMemoryBackend is the in-memory implementation of Backend. Amazon ECR Public is a single-region (us-east-1), single-registry-per-account service: there is no per-region partitioning of repositories, matching the real API.
func NewInMemoryBackend ¶
func NewInMemoryBackend(accountID, region string) *InMemoryBackend
NewInMemoryBackend creates a new Amazon ECR Public backend for accountID.
func (*InMemoryBackend) AccountID ¶
func (b *InMemoryBackend) AccountID() string
AccountID returns the AWS account ID this backend is configured for.
func (*InMemoryBackend) BatchCheckLayerAvailability ¶
func (b *InMemoryBackend) BatchCheckLayerAvailability( registryID, repositoryName string, layerDigests []string, ) ([]LayerInfo, []LayerFailure, error)
BatchCheckLayerAvailability reports which of the given layer digests have already been uploaded (via a completed InitiateLayerUpload session) to repositoryName.
func (*InMemoryBackend) BatchDeleteImage ¶
func (b *InMemoryBackend) BatchDeleteImage( registryID, repositoryName string, imageIDs []ImageIdentifier, ) ([]ImageIdentifier, []ImageFailure, error)
BatchDeleteImage deletes images by digest (removing every tag bound to it) or by tag (removing only that binding; the image survives if another tag still references it).
func (*InMemoryBackend) CompleteLayerUpload ¶
func (b *InMemoryBackend) CompleteLayerUpload( registryID, repositoryName, uploadID string, layerDigests []string, ) (string, error)
CompleteLayerUpload finalizes an upload session, computing (and, if the caller supplied one, verifying) the layer's SHA256 digest.
func (*InMemoryBackend) CreateRepository ¶
func (b *InMemoryBackend) CreateRepository( name string, catalogData *CatalogData, tags map[string]string, ) (*Repository, error)
CreateRepository creates a new public repository under the caller's account.
func (*InMemoryBackend) DeleteRepository ¶
func (b *InMemoryBackend) DeleteRepository(registryID, name string, force bool) (*Repository, error)
DeleteRepository deletes a repository. Non-empty repositories are rejected unless force is set, matching AWS.
func (*InMemoryBackend) DeleteRepositoryPolicy ¶
func (b *InMemoryBackend) DeleteRepositoryPolicy(registryID, name string) (string, error)
DeleteRepositoryPolicy deletes the repository's resource policy, returning the deleted policy text.
func (*InMemoryBackend) DescribeImageTags ¶
func (b *InMemoryBackend) DescribeImageTags(registryID, repositoryName string) ([]ImageTagDetail, error)
DescribeImageTags returns one ImageTagDetail per tag currently bound in the repository.
func (*InMemoryBackend) DescribeImages ¶
func (b *InMemoryBackend) DescribeImages( registryID, repositoryName string, imageIDs []ImageIdentifier, ) ([]ImageDetail, error)
DescribeImages returns image details for a repository, optionally filtered by digest or tag.
func (*InMemoryBackend) DescribeRegistries ¶
func (b *InMemoryBackend) DescribeRegistries() ([]RegistryInfo, error)
DescribeRegistries returns the public registries visible to the caller. This is a single-tenant emulator: it always returns exactly the caller's own registry, never other accounts' registries (there is no cross-account Gallery directory modeled here -- see PARITY.md).
func (*InMemoryBackend) DescribeRepositories ¶
func (b *InMemoryBackend) DescribeRepositories(registryID string, names []string) ([]*Repository, error)
DescribeRepositories returns repositories in the given registry, optionally filtered by name. An unknown name in a non-empty filter is a hard error, matching AWS.
func (*InMemoryBackend) GetAuthorizationToken ¶
GetAuthorizationToken returns a base64(user:password) authorization token and its expiry. The emulator does not model per-principal credentials -- every caller gets the same stable token, honestly reflecting that this is not a real authentication backend (see PARITY.md).
func (*InMemoryBackend) GetRegistryCatalogData ¶
func (b *InMemoryBackend) GetRegistryCatalogData() (RegistryCatalogData, error)
GetRegistryCatalogData returns the account-wide Gallery display metadata.
func (*InMemoryBackend) GetRepositoryCatalogData ¶
func (b *InMemoryBackend) GetRepositoryCatalogData(registryID, name string) (*CatalogData, error)
GetRepositoryCatalogData returns the Gallery-visible catalog metadata for a repository.
func (*InMemoryBackend) GetRepositoryPolicy ¶
func (b *InMemoryBackend) GetRepositoryPolicy(registryID, name string) (string, error)
GetRepositoryPolicy returns the repository's resource policy text.
func (*InMemoryBackend) InitiateLayerUpload ¶
func (b *InMemoryBackend) InitiateLayerUpload(registryID, repositoryName string) (string, int64, error)
InitiateLayerUpload starts a new layer upload session for repositoryName.
func (*InMemoryBackend) ListTagsForResource ¶
func (b *InMemoryBackend) ListTagsForResource(resourceARN string) (map[string]string, error)
ListTagsForResource returns all tags on a repository.
func (*InMemoryBackend) PutImage ¶
func (b *InMemoryBackend) PutImage(registryID, repositoryName string, req PutImageRequest) (*Image, error)
PutImage creates or replaces an image manifest, verifying that every layer (and config blob) it references was already uploaded via BatchCheckLayerAvailability/CompleteLayerUpload.
func (*InMemoryBackend) PutRegistryCatalogData ¶
func (b *InMemoryBackend) PutRegistryCatalogData(displayName string) (RegistryCatalogData, error)
PutRegistryCatalogData replaces the account-wide Gallery display metadata.
func (*InMemoryBackend) PutRepositoryCatalogData ¶
func (b *InMemoryBackend) PutRepositoryCatalogData( registryID, name string, catalogData *CatalogData, ) (*CatalogData, error)
PutRepositoryCatalogData replaces the Gallery-visible catalog metadata for a repository.
func (*InMemoryBackend) Restore ¶
func (b *InMemoryBackend) Restore(ctx context.Context, data []byte) error
Restore deserializes backend state from a JSON snapshot.
func (*InMemoryBackend) SetRepositoryPolicy ¶
func (b *InMemoryBackend) SetRepositoryPolicy(registryID, name, policyText string) (string, error)
SetRepositoryPolicy sets or replaces the repository's resource policy text.
func (*InMemoryBackend) Snapshot ¶
func (b *InMemoryBackend) Snapshot(ctx context.Context) []byte
Snapshot serializes backend state to JSON.
func (*InMemoryBackend) TagResource ¶
func (b *InMemoryBackend) TagResource(resourceARN string, tags map[string]string) error
TagResource adds or replaces tags on a repository.
func (*InMemoryBackend) UntagResource ¶
func (b *InMemoryBackend) UntagResource(resourceARN string, tagKeys []string) error
UntagResource removes tags from a repository by key.
func (*InMemoryBackend) UploadLayerPart ¶
func (b *InMemoryBackend) UploadLayerPart( registryID, repositoryName, uploadID string, firstByte, lastByte int64, blob []byte, ) (int64, error)
UploadLayerPart appends a chunk of layer bytes to a live upload session. AWS requires each part's first byte to be consecutive to the bytes already received; a gap or overlap is rejected with InvalidLayerPartException.
type LayerFailure ¶
LayerFailure describes a layer digest BatchCheckLayerAvailability could not find.
type LayerFailureWire ¶
type LayerFailureWire struct {
FailureCode string `json:"failureCode,omitempty"`
FailureReason string `json:"failureReason,omitempty"`
LayerDigest string `json:"layerDigest,omitempty"`
}
LayerFailureWire mirrors types.LayerFailure.
type LayerInfo ¶
type LayerInfo struct {
LayerDigest string
LayerAvailability string
MediaType string
LayerSize int64
}
LayerInfo describes an available image layer.
type LayerWire ¶
type LayerWire struct {
LayerAvailability string `json:"layerAvailability,omitempty"`
LayerDigest string `json:"layerDigest,omitempty"`
MediaType string `json:"mediaType,omitempty"`
LayerSize int64 `json:"layerSize,omitempty"`
}
LayerWire mirrors types.Layer.
type Provider ¶
type Provider struct{}
Provider implements service.Provider for Amazon ECR Public.
func (*Provider) Init ¶
func (p *Provider) Init(ctx *service.AppContext) (service.Registerable, error)
Init initializes the Amazon ECR Public service backend and handler. Public repositories are a us-east-1-only service in real AWS, so the backend is always constructed for that region regardless of the configured default.
type PutImageRequest ¶
type PutImageRequest struct {
ImageDigest string
ImageManifest string
ImageManifestMediaType string
ImageTag string
}
PutImageRequest carries the fields PutImage needs from the wire request.
type ReferencedImageDetailWire ¶
type ReferencedImageDetailWire struct {
ArtifactMediaType string `json:"artifactMediaType,omitempty"`
ImageDigest string `json:"imageDigest,omitempty"`
ImageManifestMediaType string `json:"imageManifestMediaType,omitempty"`
ImagePushedAt float64 `json:"imagePushedAt,omitempty"`
ImageSizeInBytes int64 `json:"imageSizeInBytes,omitempty"`
}
ReferencedImageDetailWire mirrors types.ReferencedImageDetail.
type RegistryAliasInfo ¶
type RegistryAliasInfo struct {
Name string
Status string
DefaultRegistryAlias bool
PrimaryRegistryAlias bool
}
RegistryAliasInfo describes one alias of a public registry.
type RegistryAliasWire ¶
type RegistryAliasWire struct {
Name string `json:"name"`
Status string `json:"status"`
DefaultRegistryAlias bool `json:"defaultRegistryAlias"`
PrimaryRegistryAlias bool `json:"primaryRegistryAlias"`
}
RegistryAliasWire mirrors types.RegistryAlias.
type RegistryCatalogData ¶
type RegistryCatalogData struct {
DisplayName string
}
RegistryCatalogData is the account-wide Gallery display metadata.
type RegistryCatalogDataWire ¶
type RegistryCatalogDataWire struct {
DisplayName string `json:"displayName,omitempty"`
}
RegistryCatalogDataWire mirrors types.RegistryCatalogData.
type RegistryInfo ¶
type RegistryInfo struct {
RegistryArn string
RegistryID string
RegistryURI string
Aliases []RegistryAliasInfo
Verified bool
}
RegistryInfo describes a public registry, computed from backend state.
type RegistryWire ¶
type RegistryWire struct {
RegistryArn string `json:"registryArn"`
RegistryID string `json:"registryId"`
RegistryURI string `json:"registryUri"`
Aliases []RegistryAliasWire `json:"aliases"`
Verified bool `json:"verified"`
}
RegistryWire mirrors types.Registry.
type Repository ¶
type Repository struct {
CreatedAt time.Time
Tags map[string]string
RepositoryName string
RepositoryArn string
RegistryID string
RepositoryURI string
PolicyText string
CatalogData CatalogData
HasPolicy bool
}
Repository is the domain model for a public ECR repository.
type RepositoryWire ¶
type RepositoryWire struct {
RegistryID string `json:"registryId,omitempty"`
RepositoryArn string `json:"repositoryArn,omitempty"`
RepositoryName string `json:"repositoryName,omitempty"`
RepositoryURI string `json:"repositoryUri,omitempty"`
CreatedAt float64 `json:"createdAt,omitempty"`
}
RepositoryWire mirrors types.Repository.
Source Files
¶
- auth.go
- catalog.go
- digest.go
- errors.go
- handler.go
- handler_auth.go
- handler_catalog.go
- handler_images.go
- handler_layers.go
- handler_policy.go
- handler_repositories.go
- handler_tags.go
- images.go
- interfaces.go
- layers.go
- models.go
- pagination.go
- persistence.go
- policy.go
- provider.go
- repositories.go
- store.go
- store_setup.go
- tags.go
- wire.go