1#[cfg(feature = "s3-sync")]
4use super::ConfigFile;
5#[cfg(feature = "s3-sync")]
6use anyhow::Result;
7
8#[cfg(feature = "s3-sync")]
10pub async fn upload_to_s3_provider(files: &[ConfigFile], provider: &str, encrypted: bool) -> Result<()> {
11 use super::providers::S3Provider;
12
13 let s3_provider = S3Provider::new_with_provider(provider).await?;
15
16 s3_provider.upload_configs(files, encrypted).await
18}
19
20#[cfg(feature = "s3-sync")]
22pub async fn download_from_s3_provider(provider: &str, encrypted: bool) -> Result<Vec<ConfigFile>> {
23 use super::providers::S3Provider;
24
25 let s3_provider = S3Provider::new_with_provider(provider).await?;
27
28 s3_provider.download_configs(encrypted).await
30}
31
32#[cfg(feature = "s3-sync")]
34#[deprecated(note = "Use upload_to_s3_provider instead")]
35pub async fn upload_to_s3(files: &[ConfigFile]) -> Result<()> {
36 upload_to_s3_provider(files, "s3", false).await
37}
38
39#[cfg(feature = "s3-sync")]
40#[deprecated(note = "Use download_from_s3_provider instead")]
41pub async fn download_from_s3() -> Result<Vec<ConfigFile>> {
42 download_from_s3_provider("s3", false).await
43}