6 releases

0.4.1 May 18, 2021
0.4.0 Apr 1, 2021
0.3.3 Mar 24, 2021
0.3.1 Feb 11, 2021

#1452 in WebAssembly

Apache-2.0

22KB
503 lines

crates.io  Rust license  documentation

wasmCloud File System Provider

The wasmCloud File System provider is a capability provider for the wasmcloud:blobstore protocol. This generic protocol can be used to support capability providers like Amazon S3, Azure blob storage, Google blob storage, and more. This crate is an implementation of the protocol that operates on top of a designated root directory and can be used interchangeably with the larger cloud blob providers.

For this provider, the concept of a container is a directory beneath the root (specified via the ROOT configuration variable), while a blob corresponds to a file stored within one of the containers.

Because of the way WebAssembly and the wasmCloud host work, all wasmcloud:blobstore capability providers must stream files to and from the actor. This allows actors to unblock long enough to allow other messages from other providers to be processed and keeps the WebAssembly module from allocating too much memory.

Dependencies

~4–12MB
~142K SLoC