From 6abf4e57f50deb37dd642a694cf7a8faebd1e472 Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Fri, 19 Jun 2026 23:34:01 -0400 Subject: [PATCH] upload for analysis --- Cargo.lock | 1 + .../src/startup/setup_seedance_video_bucket.rs | 14 ++++++++------ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4f8e25b861..6a3385b1b3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -11589,6 +11589,7 @@ dependencies = [ "billing_artcraft_component", "billing_component", "bootstrap", + "bucket_client", "bucket_paths", "bytes", "chrono", diff --git a/crates/service/web/storyteller_web/src/startup/setup_seedance_video_bucket.rs b/crates/service/web/storyteller_web/src/startup/setup_seedance_video_bucket.rs index 2899d3c92d..0d042fe36b 100644 --- a/crates/service/web/storyteller_web/src/startup/setup_seedance_video_bucket.rs +++ b/crates/service/web/storyteller_web/src/startup/setup_seedance_video_bucket.rs @@ -1,6 +1,6 @@ //! Optional setup for the Seedance video archive bucket. //! -//! Reads the four `SEEDANCE_VIDEO_BUCKET_*` env vars. All must be present to +//! Reads the five `SEEDANCE_VIDEO_BUCKET_*` env vars. All must be present to //! build a client; otherwise the client is `None` and archival uploads are //! simply skipped. A *partial* configuration is treated as a misconfiguration //! (warned, not built). @@ -14,16 +14,18 @@ use log::{info, warn}; pub fn setup_seedance_video_bucket() -> Option { let bucket_name = read_non_empty_env("SEEDANCE_VIDEO_BUCKET_NAME"); let region = read_non_empty_env("SEEDANCE_VIDEO_BUCKET_REGION"); + let endpoint = read_non_empty_env("SEEDANCE_VIDEO_BUCKET_ENDPOINT"); let access_key = read_non_empty_env("SEEDANCE_VIDEO_BUCKET_ACCESS_KEY_ID"); let secret_key = read_non_empty_env("SEEDANCE_VIDEO_BUCKET_SECRET_ACCESS_KEY"); - match (bucket_name, region, access_key, secret_key) { - (Some(bucket_name), Some(region), Some(access_key), Some(secret_key)) => { + match (bucket_name, region, endpoint, access_key, secret_key) { + (Some(bucket_name), Some(region), Some(endpoint), Some(access_key), Some(secret_key)) => { match BucketClientBuilder::new() .access_key(access_key) .secret_key(secret_key) .region_name(region) .bucket_name(&bucket_name) + .endpoint(endpoint) .build() { Ok(client) => { @@ -36,15 +38,15 @@ pub fn setup_seedance_video_bucket() -> Option { } } } - (None, None, None, None) => { + (None, None, None, None, None) => { info!("Seedance video bucket not configured; archival uploads disabled."); None } _ => { warn!( "Seedance video bucket is only partially configured \ - (need all of SEEDANCE_VIDEO_BUCKET_NAME / _REGION / _ACCESS_KEY_ID / \ - _SECRET_ACCESS_KEY); skipping setup." + (need all of SEEDANCE_VIDEO_BUCKET_NAME / _REGION / _ENDPOINT / \ + _ACCESS_KEY_ID / _SECRET_ACCESS_KEY); skipping setup." ); None }