Skip to content

Clarify that "Image Layout" is OPTIONAL #720

@AkihiroSuda

Description

@AkihiroSuda

The current image spec explicitly says that "This layout MAY be used in a variety of different transport mechanisms" (image-layout.md).

However, it doesn't explicitly say that "This layout is OPTIONAL" (regardless to the transportation).

Actually, I was rather misunderstanding that using the layout were "REQUIRED but not specific to a certain transport mechanism", and got confused for that index.json is REQUIRED (image-layout.md) for layout but OPTIONAL (image-index.md)for image providers. (#716, #719)

So I'd like to open a PR as follows:

diff --git a/image-layout.md b/image-layout.md
index 0c762c1..5351150 100644
--- a/image-layout.md
+++ b/image-layout.md
@@ -1,6 +1,7 @@
 ## OCI Image Layout Specification

 * The OCI Image Layout is a slash separated layout of OCI content-addressable blobs and [location-addressable](https://en.wikipedia.org/wiki/Content-addressable_storage#Content-addressed_vs._location-addressed) references (refs).
+* Conformity to this layout specification is OPTIONAL unless an image contains `oci-layout` file.
 * This layout MAY be used in a variety of different transport mechanisms: archive formats (e.g. tar, zip), shared filesystem environments (e.g. nfs), or networked file fetching (e.g. http, ftp, rsync).

 Given an image layout and a ref, a tool can create an [OCI Runtime Specification bundle](https://github.com/opencontainers/runtime-spec/blob/v1.0.0/bundle.md) by:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions