Crate unftp_sbe_gcs
source ·Expand description
An storage back-end for libunftp that let you store files in Google Cloud Storage.
§Usage
Add the needed dependencies to Cargo.toml:
[dependencies]
libunftp = "0.20.0"
unftp-sbe-gcs = "0.2.5"
tokio = { version = "1", features = ["full"] }
And add to src/main.rs:
use libunftp::Server;
use unftp_sbe_gcs::{ServerExt, options::AuthMethod};
use std::path::PathBuf;
#[tokio::main]
pub async fn main() {
let server = Server::with_gcs("my-bucket", PathBuf::from("/unftp"), AuthMethod::WorkloadIdentity(None))
.greeting("Welcome to my FTP server")
.passive_ports(50000..65535)
.build()
.unwrap();
server.listen("127.0.0.1:2121").await;
}
This example uses the ServerExt
extension trait. You can also call one of the other
constructors of Server
e.g.
use libunftp::Server;
use unftp_sbe_gcs::{CloudStorage, options::AuthMethod};
use std::path::PathBuf;
#[tokio::main]
pub async fn main() {
let server = libunftp::Server::new(
Box::new(move || CloudStorage::with_bucket_root("my-bucket", PathBuf::from("/ftp-root"), AuthMethod::WorkloadIdentity(None)))
)
.greeting("Welcome to my FTP server")
.passive_ports(50000..65535)
.build()
.unwrap();
server.listen("127.0.0.1:2121").await;
}
Modules§
- The Metadata for the CloudStorage
- Contains code pertaining to initialization options for the
Cloud Storage Backend
Structs§
- A
StorageBackend
that uses Cloud storage from Google. cloned for each controlchan!
Traits§
- Extension trait purely for construction convenience.