package types

import "github.com/docker/cli/cli/manifest/types"

Index

Functions

func OCIPlatform

func OCIPlatform(ps *manifestlist.PlatformSpec) *ocispec.Platform

OCIPlatform creates an OCI platform from a manifest list platform spec

func PlatformSpecFromOCI

func PlatformSpecFromOCI(p *ocispec.Platform) *manifestlist.PlatformSpec

PlatformSpecFromOCI creates a platform spec from OCI platform

Types

type ImageManifest

type ImageManifest struct {
	Ref        *SerializableNamed
	Descriptor ocispec.Descriptor

	// SchemaV2Manifest is used for inspection
	// TODO: Deprecate this and store manifest blobs
	SchemaV2Manifest *schema2.DeserializedManifest `json:",omitempty"`
}

ImageManifest contains info to output for a manifest object.

func NewImageManifest

func NewImageManifest(ref reference.Named, desc ocispec.Descriptor, manifest *schema2.DeserializedManifest) ImageManifest

NewImageManifest returns a new ImageManifest object. The values for Platform are initialized from those in the image

func (ImageManifest) Blobs

func (i ImageManifest) Blobs() []digest.Digest

Blobs returns the digests for all the blobs referenced by this manifest

func (ImageManifest) Payload

func (i ImageManifest) Payload() (string, []byte, error)

Payload returns the media type and bytes for the manifest

func (ImageManifest) References

func (i ImageManifest) References() []distribution.Descriptor

References implements the distribution.Manifest interface. It delegates to the underlying manifest.

type SerializableNamed

type SerializableNamed struct {
	reference.Named
}

SerializableNamed is a reference.Named that can be serialized and deserialized from JSON

func (*SerializableNamed) MarshalJSON

func (s *SerializableNamed) MarshalJSON() ([]byte, error)

MarshalJSON returns the JSON bytes representation

func (*SerializableNamed) UnmarshalJSON

func (s *SerializableNamed) UnmarshalJSON(b []byte) error

UnmarshalJSON loads the Named reference from JSON bytes

Source Files

types.go

Version
v20.10.10+incompatible
Published
Oct 15, 2021
Platform
linux/amd64
Imports
8 packages
Last checked
6 minutes ago

Tools for package owners.