Stevedore.Transport.Static (Stevedore v0.1.0)

Copy Markdown View Source

The static: transport — a Stevedore-native registry-v2 directory tree.

Writes a layout a dumb web server can serve as a read-only registry: v2/<name>/manifests/<tag|digest> and v2/<name>/blobs/<digest>. Each manifest is written both by tag and by digest, with a .mediatype sidecar recording its Content-Type (which a static server can't infer); Stevedore.Deploy (Step 7) turns these into server headers.

:name is the repository (e.g. library/alpine); Stevedore.copy/3 fills it from the source when not set.

Spec: Docker Registry HTTP API v2.

Summary

Functions

Deletes a blob by digest (idempotent).

Lists every stored manifest reference (tags and digests), excluding sidecar files.

Types

t()

@type t() :: %Stevedore.Transport.Static{name: String.t() | nil, path: Path.t()}

Functions

delete_blob(t, digest)

@spec delete_blob(t(), Stevedore.Digest.t()) :: :ok

Deletes a blob by digest (idempotent).

list_manifest_refs(t)

@spec list_manifest_refs(t()) :: [String.t()]

Lists every stored manifest reference (tags and digests), excluding sidecar files.