Skip to content

Commit

Permalink
manifest-list: platform is effective optional
Browse files Browse the repository at this point in the history
Per the 2017-01-25 call, stevvooe pointed out that in implementation
this field is optional and sane defaults are assumed.

This pairs nicely with the index model of providing a list of
descriptors, that may not be platform specific objects (i.e. an XML file
for AppStream data).

For media that pertains to an image, like AppStream metadata, may need
to accompany a manifest-list, but is not a descriptor that points to a
manifest (i.e. and XML file).

This clarifies the behavior on handling unknown `mediaType` descriptors.

Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
  • Loading branch information
laventuraw committed Jan 31, 2025
1 parent 638ef4e commit 5488c3d
Showing 1 changed file with 7 additions and 11 deletions.
18 changes: 7 additions & 11 deletions manifest-list.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,10 @@ For the media type(s) that this document is compatible with, see the [matrix][ma

- **`manifests`** *array of objects*

This REQUIRED property contains a list of manifests for specific platforms.
While the property MUST be present, the size of the array MAY be zero.
This REQUIRED property contains a list of [manifests](manifest.md) for specific platforms.
While this property MUST be present, the size of the array MAY be zero.

Each object in `manifests` is a [descriptor](descriptor.md) with the following additional properties and restrictions:
Each object in `manifests` has the base properties of [descriptor](descriptor.md) with the following additional properties and restrictions:

- **`mediaType`** *string*

Expand All @@ -33,10 +33,13 @@ For the media type(s) that this document is compatible with, see the [matrix][ma
- [`application/vnd.oci.image.manifest.v1+json`](manifest.md)

Manifest lists concerned with portability SHOULD use one of the above media types.
Future versions of the spec MAY use a different mediatype (i.e. a new versioned format).
An encountered `mediaType` that is unknown SHOULD be safely ignored.

- **`platform`** *object*

This REQUIRED property describes the platform which the image in the manifest runs on.
This OPTIONAL property describes the platform which the image in the manifest runs on.
This property SHOULD be present if its target is platform-specific.

- **`architecture`** *string*

Expand Down Expand Up @@ -64,13 +67,6 @@ For the media type(s) that this document is compatible with, see the [matrix][ma

This OPTIONAL property specifies an array of strings, each specifying a mandatory CPU feature (for example `sse4` or `aes`).

- **`annotations`** *string-string map*

This OPTIONAL property contains arbitrary metadata for the manifest list.
This OPTIONAL property MUST use the [annotation rules](annotations.md#rules).

See [Pre-Defined Annotation Keys](annotations.md#pre-defined-annotation-keys).

## Example Manifest List

*Example showing a simple manifest list pointing to image manifests for two platforms:*
Expand Down

0 comments on commit 5488c3d

Please sign in to comment.