You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: spec.md
+21-20Lines changed: 21 additions & 20 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -57,7 +57,7 @@ Several terms are used frequently in this document and warrant basic definitions
57
57
-**Push**: the act of uploading Blobs and Manifests to a Registry
58
58
-**Pull**: the act of downloading Blobs and Manifests from a Registry
59
59
-**Blob**: the binary form of content that is stored by a Registry, addressable by a Digest
60
-
-**Manifest**: a JSON document which defines an Artifact. Manifests are defined under the OCI Image Spec <sup>[apdx-2](#appendix)</sup>
60
+
-**Manifest**: a JSON document which defines an artifact uploaded via the manifests endpoint. A manifest may reference other blobs in a repository via descriptors. Examples of manifests are defined under the OCI Image Spec <sup>[apdx-2](#appendix)</sup>, such as the image manifest or the image index.</sup>
61
61
-**Config**: a blob referenced in the Manifest which contains Artifact metadata. Config is defined under the OCI Image Spec <sup>[apdx-4](#appendix)</sup>
62
62
-**Artifact**: one conceptual piece of content stored as Blobs with an accompanying Manifest containing a Config
63
63
-**Digest**: a unique identifier created from a cryptographic hash of a Blob's content. Digests are defined under the OCI Image Spec <sup>[apdx-3](#appendix)</sup>
@@ -190,11 +190,12 @@ If the blob or manifest is not found in the registry, the response code MUST be
190
190
191
191
#### Push
192
192
193
-
Pushing an artifact typically works in the opposite order as a pull: the blobs making up the artifact are uploaded first,
194
-
and the manifest last. Strictly speaking, content can be uploaded to the registry in any order, but a registry MAY reject
195
-
a manifest if it references blobs that are not yet uploaded, resulting in a `BLOB_UNKNOWN` error <sup>[code-1](#error-codes)</sup>.
193
+
Pushing an artifact typically works in the opposite order as a pull: the blobs making up the artifact are uploaded first, and the manifest last.
196
194
A useful diagram is provided [here](https://github.com/google/go-containerregistry/tree/d7f8d06c87ed209507dd5f2d723267fe35b38a9f/pkg/v1/remote#anatomy-of-an-image-upload).
197
195
196
+
A registry MAY reject a manifest of any type uploaded to the manifest endpoint if it references manifests or blobs that do not exist in the registry.
197
+
When a manifest is rejected for this reason, it must result in one or more `MANIFEST_BLOB_UNKNOWN` errors <sup>[code-1](#error-codes)</sup>.
198
+
198
199
##### Pushing blobs
199
200
200
201
There are two ways to push blobs: chunked or monolithic.
@@ -557,22 +558,22 @@ The `detail` field is OPTIONAL and MAY contain arbitrary JSON data providing inf
0 commit comments