Expand description
§ironflow-artifacts
Blob storage for ironflow workflow artifacts: the bytes a step produces and a later step consumes.
This crate owns the payloads only. Their metadata (name, MIME type, size,
SHA-256, owning step) lives in ironflow-store and is the source of truth:
a blob without a metadata row is never listed and never served.
§Implementations
| Store | Feature | Description |
|---|---|---|
LocalBlobStore | artifact-local (default) | Local filesystem, for development, CI and shared-volume deployments. |
§Quick start
use ironflow_artifacts::prelude::*;
let store = LocalBlobStore::new("/var/lib/ironflow/artifacts");
let key = storage_key(uuid::Uuid::now_v7(), uuid::Uuid::now_v7(), uuid::Uuid::now_v7());
let digest = store.put(&key, stream_from_bytes(b"report".to_vec())).await?;
println!("{} bytes, sha256 {}", digest.size_bytes, digest.sha256);Modules§
- blob_
store - The
BlobStoretrait – async blob storage for artifact payloads. - error
- Error type for blob storage operations.
- local
LocalBlobStore– artifact blobs on the local filesystem.- name
- Artifact name validation and storage key derivation.
- prelude
- Convenience re-exports for common usage.
Functions§
- stream_
from_ bytes - Wrap an in-memory buffer as a
ByteStream. - stream_
from_ file - Read an open file as a
ByteStream, in fixed-size chunks. - stream_
from_ path - Open a file and read it as a
ByteStream.