Documentation
¶
Index ¶
Constants ¶
const MediaTypeManifestList = "application/vnd.docker.distribution.manifest.list.v2+json"
MediaTypeManifestList specifies the mediaType for manifest lists.
Variables ¶
var SchemaVersion = manifest.Versioned{ SchemaVersion: 2, MediaType: MediaTypeManifestList, }
SchemaVersion provides a pre-initialized version structure for this packages version of the manifest.
Functions ¶
This section is empty.
Types ¶
type DeserializedManifestList ¶
type DeserializedManifestList struct {
ManifestList
// contains filtered or unexported fields
}
DeserializedManifestList wraps ManifestList with a copy of the original JSON.
func FromDescriptors ¶
func FromDescriptors(descriptors []ManifestDescriptor) (*DeserializedManifestList, error)
FromDescriptors takes a slice of descriptors, and returns a DeserializedManifestList which contains the resulting manifest list and its JSON representation.
func (*DeserializedManifestList) MarshalJSON ¶
func (m *DeserializedManifestList) MarshalJSON() ([]byte, error)
MarshalJSON returns the contents of canonical. If canonical is empty, marshals the inner contents.
func (DeserializedManifestList) Payload ¶
func (m DeserializedManifestList) Payload() (string, []byte, error)
Payload returns the raw content of the manifest list. The contents can be used to calculate the content identifier.
func (*DeserializedManifestList) UnmarshalJSON ¶
func (m *DeserializedManifestList) UnmarshalJSON(b []byte) error
UnmarshalJSON populates a new ManifestList struct from JSON data.
type ManifestDescriptor ¶
type ManifestDescriptor struct {
distribution.Descriptor
// Platform specifies which platform the manifest pointed to by the
// descriptor runs on.
Platform PlatformSpec `json:"platform"`
}
A ManifestDescriptor references a platform-specific manifest.
type ManifestList ¶
type ManifestList struct {
manifest.Versioned
// Config references the image configuration as a blob.
Manifests []ManifestDescriptor `json:"manifests"`
}
ManifestList references manifests for various platforms.
func (ManifestList) References ¶
func (m ManifestList) References() []distribution.Descriptor
References returnes the distribution descriptors for the referenced image manifests.
type PlatformSpec ¶
type PlatformSpec struct {
// Architecture field specifies the CPU architecture, for example
// `amd64` or `ppc64`.
Architecture string `json:"architecture"`
// OS specifies the operating system, for example `linux` or `windows`.
OS string `json:"os"`
// Variant is an optional field specifying a variant of the CPU, for
// example `ppc64le` to specify a little-endian version of a PowerPC CPU.
Variant string `json:"variant,omitempty"`
// Features is an optional field specifuing an array of strings, each
// listing a required CPU feature (for example `sse4` or `aes`).
Features []string `json:"features,omitempty"`
}
PlatformSpec specifies a platform where a particular image manifest is applicable.