adk_artifact_gcs (erlang_adk v0.10.0)
View SourceImmutable, exactly-scoped artifact service backed by Google Cloud Storage-compatible object operations.
Logical scopes and names are never used as object-name components. Each is represented by a deterministic SHA-256 token and every loaded manifest is checked against the exact requested identity. A create-only reservation allocates a version, data is written create-only, and the create-only manifest is the publication point.
Summary
Functions
-spec delete(pid(), adk_artifact_service:scope(), binary(), adk_artifact_service:delete_selector()) -> ok | {error, term()}.
-spec delete(pid(), adk_artifact_service:scope(), binary(), adk_artifact_service:delete_selector(), adk_artifact_service:call_options()) -> ok | {error, term()}.
-spec get(pid(), adk_artifact_service:scope(), binary(), adk_artifact_service:selector()) -> {ok, adk_artifact_service:artifact()} | {error, term()}.
-spec get(pid(), adk_artifact_service:scope(), binary(), adk_artifact_service:selector(), adk_artifact_service:call_options()) -> {ok, adk_artifact_service:artifact()} | {error, term()}.
-spec get_range(pid(), adk_artifact_service:scope(), binary(), adk_artifact_service:selector(), adk_artifact_service:byte_range(), adk_artifact_service:call_options()) -> {ok, adk_artifact_service:ranged_artifact()} | {error, term()}.
-spec list(pid(), adk_artifact_service:scope()) -> {ok, [adk_artifact_service:artifact_meta()]} | {error, term()}.
-spec list_names(pid(), adk_artifact_service:scope(), map()) -> {ok, adk_artifact_service:name_page()} | {error, term()}.
-spec list_versions(pid(), adk_artifact_service:scope(), binary(), map()) -> {ok, adk_artifact_service:version_page()} | {error, term()}.
-spec put(pid(), adk_artifact_service:scope(), binary(), binary(), map()) -> {ok, adk_artifact_service:artifact_meta()} | {error, term()}.
-spec put(pid(), adk_artifact_service:scope(), binary(), binary(), map(), adk_artifact_service:call_options()) -> {ok, adk_artifact_service:artifact_meta()} | {error, term()}.
-spec start_download(pid(), adk_artifact_service:scope(), binary(), adk_artifact_service:selector(), map()) -> {ok, adk_artifact_stream:stream(), map()} | {error, term()}.
-spec start_upload(pid(), adk_artifact_service:scope(), binary(), map(), map()) -> {ok, adk_artifact_stream:stream(), map()} | {error, term()}.