Crate fractal_storage_client

Crate fractal_storage_client 

Source
Expand description

Library used to interact with storage backend and IPFS (to store encrypted snapshots and manage metadata).

Re-exports§

pub use crate::keys::Hash;
pub use crate::keys::Privkey;
pub use crate::keys::Pubkey;
pub use crate::keys::Secret;
pub use crate::stream::*;

Modules§

keys
stream

Structs§

HeaderStream
Taking a bytes stream, decode the header, and pass through the other data unchanged.
Manifest
Manifest for snapshot.
ManifestSigned
Signed manifest, keeps raw encoded data, decoded manifest, and raw signature.
Parent
SnapshotHeader
SnapshotInfo
VolumeEdit
VolumeInfo

Enums§

Error
ManifestSignedParseError
SnapshotState

Constants§

MANIFEST_SIGNATURE_LENGTH
SNAPSHOT_HEADER_SIZE

Functions§

fetch_decrypt
Fetch a snapshot from IPFS, decrypt it on-the-fly with the volume’s decryption key.
health_check
Health check.
snapshot_fetch
Upload a new snapshot
snapshot_list
Fetch latest (as in, most current generation) based on the parent generation that is passed.
snapshot_upload
Upload a new snapshot
upload_encrypt
Upload a stream of data to IPFS, encrypted with the volume’s encryption key.
volume_create
Create new snapshot repository, given a private key.
volume_edit
Edit a volume’s properties.
volume_get
Get volume’s info.
volume_remove
Remove volume.