rws_storage/lib.rs
1//! Object storage for rust-web-server: local files, S3, Azure Blob and Google Cloud Storage backends.
2//!
3//! Internal to rust-web-server, released with it at the same version: use
4//! these through the `rust_web_server` paths, which stay stable; this
5//! crate's own layout may change in any release. See
6//! `spec/WORKSPACE_SPLIT.md`.
7#![cfg_attr(docsrs, feature(doc_cfg))]
8
9// Derive output (rws-macros) names `::rust_web_server::…`; in this crate's
10// tests that is this crate.
11#[cfg(test)]
12extern crate self as rust_web_server;
13
14// The layers below, under the paths the moved code uses (`crate::request`, …);
15// public (hidden) so doctests can name them as `rust_web_server::…`.
16#[allow(unused_imports)]
17#[doc(hidden)]
18pub use rws_server::{core, http, http_client, request, scheduler, service_discovery};
19
20// Also compiled under `secrets` — `secrets::aws_secrets_manager`/`azure_key_vault`
21// reuse `StorageError` and the SigV4/Managed-Identity credential helpers from here.
22#[cfg(any(feature = "storage-local", feature = "storage-s3", feature = "storage-azure", feature = "storage-gcs"))]
23pub mod storage;
24
25#[cfg(test)]
26pub(crate) mod test_env;