Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a header with manifest tag to pull and push #358

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions spec.md
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,8 @@ The `Content-Type` header SHOULD match what the client [pushed as the manifest's
If the manifest has a `mediaType` field, clients SHOULD reject unless the `mediaType` field's value matches the type specified by the `Content-Type` header.
For more information on the use of `Accept` headers and content negotiation, please see [Content Negotiation](./content-negotiation.md).

The client SHOULD include an `OCI-Ref` header on each request with the full image reference to indicate which manifest is being pulled.

A GET request to an existing manifest URL MUST provide the expected manifest, with a response code that MUST be `200 OK`.
A successful response SHOULD contain the digest of the uploaded blob in the header `Docker-Content-Digest`.

Expand Down Expand Up @@ -201,6 +203,8 @@ A useful diagram is provided [here](https://github.com/google/go-containerregist
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.
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>.

The client MAY include an `OCI-Ref` header on each request with the full image reference to indicate which manifest is being pushed.

##### Pushing blobs

There are two ways to push blobs: chunked or monolithic.
Expand Down