diff --git a/src/config.rs b/src/config.rs index b2fa8e7..4f9f91f 100644 --- a/src/config.rs +++ b/src/config.rs @@ -1,13 +1,3 @@ - -/* -pub async fn init_config(url: &str, region: String) -> Result { - let r = region.as_str(); - let config = aws_config::from_env().endpoint_url(url).region(r).load().await; - - Ok(config) -} -*/ - pub struct Config { pub url: String, pub bucket: String, diff --git a/src/lib.rs b/src/lib.rs index fc507d1..d88d247 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,37 +1,37 @@ pub mod config; - -// use aws_sdk_s3::config::*; - #[derive(Default)] pub struct Data { pub filepath: String, - pub raw_data: Vec + pub raw_data: Vec, } - pub struct Labyrinth { pub config: config::Config, } +pub async fn load_data(filepath: &str) -> Result, std::io::Error> { + tokio::fs::read(filepath).await +} + pub enum Error { Info(String), - SError(aws_sdk_s3::operation::put_object::PutObjectError) + SError(aws_sdk_s3::operation::put_object::PutObjectError), } impl Labyrinth { - pub async fn upload(&self, file_key: &str, data: &Data) -> Result { - // let config = aws_config::from_env().endpoint_url(&self.config.url).region("").load().await; + pub async fn upload( + &self, + file_key: &str, + data: &Data, + ) -> Result { let config = aws_config::load_from_env().await; let client = aws_sdk_s3::Client::new(&config); let data_content = if data.raw_data.is_empty() { - match tokio::fs::read(&data.filepath).await { + match load_data(&data.filepath).await { Ok(content) => content, - Err(err) => { - eprintln!("Error: {err:?}"); - Vec::new() - } + Err(err) => return Err(Error::Info(err.to_string())), } } else { data.raw_data.to_owned() @@ -45,34 +45,10 @@ impl Labyrinth { .key(file_key) .body(b_stream) .send() - .await { - Ok(response) => { - println!("Response: {response:?}"); - println!("Uploaded"); - - Ok(response) - } - Err(err) => { - eprintln!("Error: {err:?}"); - // aws_sdk_s3::error::SdkError - Err(Error::Info(err.to_string())) - } + .await + { + Ok(response) => Ok(response), + Err(err) => Err(Error::Info(err.to_string())), } } } - - -pub fn add(left: u64, right: u64) -> u64 { - left + right -} - -#[cfg(test)] -mod tests { - use super::*; - - #[test] - fn it_works() { - let result = add(2, 2); - assert_eq!(result, 4); - } -}