From 489e00e527fa15ea1addfa8a0797a9b9e80cee45 Mon Sep 17 00:00:00 2001 From: Vincent Batts Date: Thu, 26 Jan 2017 14:57:05 -0500 Subject: [PATCH] manifest-list: `platform` is effective optional 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 --- manifest-list.md | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/manifest-list.md b/manifest-list.md index 05b3d7572..24499bd1c 100644 --- a/manifest-list.md +++ b/manifest-list.md @@ -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* @@ -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* @@ -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:*