@@ -19,7 +19,7 @@ pub use collection::CollectionStats;
1919use duration_str:: deserialize_duration;
2020use notify:: NotifierConfig ;
2121use orama_js_pool:: OutputChannel ;
22- use oramacore_lib:: secrets:: { SecretsManagerConfig , SecretsService } ;
22+ use oramacore_lib:: secrets:: { SecretsProviderConfig , SecretsService } ;
2323use oramacore_lib:: shelves:: ShelfId ;
2424use std:: sync:: Arc ;
2525use std:: time:: Duration ;
@@ -83,7 +83,7 @@ pub struct ReadSideConfig {
8383 #[ serde( default ) ]
8484 pub hooks : HooksConfig ,
8585 pub jwt : Option < JwtConfig > ,
86- pub secrets_manager : Option < SecretsManagerConfig > ,
86+ pub secrets_manager : Option < Vec < SecretsProviderConfig > > ,
8787}
8888
8989#[ derive( Debug , Deserialize , Clone , Copy ) ]
@@ -269,15 +269,14 @@ impl ReadSide {
269269 . await
270270 . context ( "Cannot create JWT manager" ) ?;
271271
272- // Initialize secrets service if configured, otherwise use an empty fallback
273272 let secrets_service = match config. secrets_manager {
274- Some ( secrets_config ) => {
273+ Some ( configs ) if !configs . is_empty ( ) => {
275274 info ! ( "Initializing secrets service" ) ;
276- SecretsService :: try_new ( secrets_config )
275+ SecretsService :: try_new ( configs )
277276 . await
278277 . context ( "Cannot create secrets service" ) ?
279278 }
280- None => SecretsService :: empty ( ) ,
279+ _ => SecretsService :: empty ( ) ,
281280 } ;
282281
283282 let read_side = ReadSide {
0 commit comments