diff --git a/README.md b/README.md
index 9f16858..5156e24 100644
--- a/README.md
+++ b/README.md
@@ -11,9 +11,9 @@
`AWS_ENDPOINT` - S3 endpoint (optional)
-`AWS_ACCESS_KEY_ID` - S3 Access key (optional)
+`AWS_ACCESS_KEY_ID` - S3 Access key (required)
-`AWS_SECRET_ACCESS_KEY` S3 Secret key (optional)
+`AWS_SECRET_ACCESS_KEY` S3 Secret key (required)
`HEADER_CC_1Y` - Add header `Cache-Control: public, max-age=31536000` (optional)
diff --git a/src/main.rs b/src/main.rs
index 4cf759a..f253f60 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -98,7 +98,7 @@ async fn index() -> impl Responder {
async fn main() -> std::io::Result<()> {
env_logger::init_from_env(Env::default().default_filter_or("info"));
- let env_vars = &["AWS_ENDPOINT", "AWS_BUCKET"];
+ let env_vars = &["AWS_BUCKET"];
for var in env_vars {
check_env_var(var);
@@ -111,15 +111,18 @@ async fn main() -> std::io::Result<()> {
panic!("Either both AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY must be set or neither.");
}
- let endpoint = env::var("AWS_ENDPOINT").ok();
-
let region_provider = RegionProviderChain::default_provider().or_else("us-east-1");
- let shared_config = aws_config::from_env()
- .region(region_provider)
- .endpoint_url(endpoint.unwrap_or_default())
- .load()
- .await;
+ let mut config_builder = aws_config::from_env()
+ .region(region_provider);
+
+ if let Ok(endpoint_value) = env::var("AWS_ENDPOINT") {
+ config_builder = config_builder.endpoint_url(endpoint_value);
+ }
+
+ let shared_config = config_builder.load().await;
+
+ println!("{:?}", shared_config);
let client = Client::new(&shared_config);
let bind_address = get_bind_address();