oci

package
v0.1.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 30, 2024 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DockerReferenceType     = "vnd.docker.reference.type"
	DockerReferenceDigest   = "vnd.docker.reference.digest"
	AttestationManifestType = "attestation-manifest"
	InTotoPredicateType     = "in-toto.io/predicate-type"
	OciReferenceTarget      = "org.opencontainers.image.ref.name"
)

Variables

This section is empty.

Functions

func ExtractEnvelopes

func ExtractEnvelopes(ia *AttestationManifest, predicateType string) ([]*att.Envelope, error)

func HttpTransport

func HttpTransport() http.RoundTripper

func RefToPURL

func RefToPURL(ref string, platform string) (string, bool, error)

Types

type AttestationIndex added in v0.1.3

type AttestationIndex struct {
	Index v1.ImageIndex
	Name  string
}

func AttestationIndexFromPath added in v0.1.3

func AttestationIndexFromPath(path string) (*AttestationIndex, error)

func AttestationIndexFromRemote added in v0.1.3

func AttestationIndexFromRemote(image string) (*AttestationIndex, error)

type AttestationManifest

type AttestationManifest struct {
	// attestation image details
	Image      v1.Image
	Manifest   *v1.Manifest
	Descriptor *v1.Descriptor
	// details of subect image
	Name     string
	Digest   string
	Platform *v1.Platform
}

func FetchAttestationManifest

func FetchAttestationManifest(ctx context.Context, image, platformStr string) (*AttestationManifest, error)

type AttestationResolver

type AttestationResolver interface {
	ImageName(ctx context.Context) (string, error)
	ImagePlatformStr() string
	ImageDigest(ctx context.Context) (string, error)
	Attestations(ctx context.Context, mediaType string) ([]*att.Envelope, error)
}

type MockResolver

type MockResolver struct {
	Envs []*att.Envelope
}

func (MockResolver) Attestations

func (r MockResolver) Attestations(ctx context.Context, mediaType string) ([]*att.Envelope, error)

func (MockResolver) ImageDigest

func (r MockResolver) ImageDigest(ctx context.Context) (string, error)

func (MockResolver) ImageName

func (r MockResolver) ImageName(ctx context.Context) (string, error)

func (MockResolver) ImagePlatformStr

func (r MockResolver) ImagePlatformStr() string

type OCILayoutResolver

type OCILayoutResolver struct {
	Path     string
	Platform string
	*AttestationManifest
}

implementation of AttestationResolver that closes over attestations from an oci layout

func (*OCILayoutResolver) Attestations

func (r *OCILayoutResolver) Attestations(ctx context.Context, predicateType string) ([]*att.Envelope, error)

func (*OCILayoutResolver) ImageDigest

func (r *OCILayoutResolver) ImageDigest(ctx context.Context) (string, error)

func (*OCILayoutResolver) ImageName

func (r *OCILayoutResolver) ImageName(ctx context.Context) (string, error)

func (*OCILayoutResolver) ImagePlatformStr

func (r *OCILayoutResolver) ImagePlatformStr() string

type Option

type Option = func(*http.Client)

type RegistryResolver

type RegistryResolver struct {
	Image    string
	Platform string
	*AttestationManifest
}

func (*RegistryResolver) Attestations

func (r *RegistryResolver) Attestations(ctx context.Context, predicateType string) ([]*att.Envelope, error)

func (*RegistryResolver) ImageDigest

func (r *RegistryResolver) ImageDigest(ctx context.Context) (string, error)

func (*RegistryResolver) ImageName

func (r *RegistryResolver) ImageName(ctx context.Context) (string, error)

func (*RegistryResolver) ImagePlatformStr

func (r *RegistryResolver) ImagePlatformStr() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL