@@ -14,33 +14,42 @@ const redact = (value?: string) => {
1414} ;
1515
1616try {
17+ console . log ( '[S3] Initializing S3 Client' ) ;
18+ console . error ( '--- Provided Configuration ---' ) ;
19+ console . error ( `APP_AWS_REGION: ${ APP_AWS_REGION } ` ) ;
20+ console . error ( `APP_AWS_ACCESS_KEY_ID: ${ redact ( APP_AWS_ACCESS_KEY_ID ) } ` ) ;
21+ console . error ( `APP_AWS_SECRET_ACCESS_KEY: ${ redact ( APP_AWS_SECRET_ACCESS_KEY ) } ` ) ;
22+ console . error ( `APP_AWS_BUCKET_NAME: ${ BUCKET_NAME } ` ) ;
23+ console . error ( '-----------------------------' ) ;
24+
1725 if ( ! APP_AWS_ACCESS_KEY_ID || ! APP_AWS_SECRET_ACCESS_KEY || ! BUCKET_NAME || ! APP_AWS_REGION ) {
26+ console . error ( '[S3] AWS S3 credentials or configuration missing. Check environment variables.' ) ;
1827 throw new Error ( 'AWS S3 credentials or configuration missing. Check environment variables.' ) ;
1928 }
2029
30+ console . log ( '[S3] AWS S3 credentials or configuration found. Initializing S3 Client' ) ;
31+
2132 s3ClientInstance = new S3Client ( {
2233 region : APP_AWS_REGION ,
2334 credentials : {
2435 accessKeyId : APP_AWS_ACCESS_KEY_ID ,
2536 secretAccessKey : APP_AWS_SECRET_ACCESS_KEY ,
2637 } ,
2738 } ) ;
39+
40+ console . log ( '[S3] S3 Client initialized successfully' ) ;
2841} catch ( error ) {
2942 console . error ( '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!' ) ;
3043 console . error ( '!!! FAILED TO INITIALIZE S3 CLIENT !!!' ) ;
3144 console . error ( '!!! This is likely due to missing or invalid environment variables. !!!' ) ;
32- console . error ( '--- Provided Configuration ---' ) ;
33- console . error ( `APP_AWS_REGION: ${ APP_AWS_REGION } ` ) ;
34- console . error ( `APP_AWS_ACCESS_KEY_ID: ${ redact ( APP_AWS_ACCESS_KEY_ID ) } ` ) ;
35- console . error ( `APP_AWS_SECRET_ACCESS_KEY: ${ redact ( APP_AWS_SECRET_ACCESS_KEY ) } ` ) ;
36- console . error ( `APP_AWS_BUCKET_NAME: ${ BUCKET_NAME } ` ) ;
37- console . error ( '-----------------------------' ) ;
3845 console . error ( 'Error:' , error ) ;
3946 console . error ( '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!' ) ;
40- // Prevent the app from continuing without a valid S3 client
41- // In a real-world scenario, you might have a fallback or a dummy client.
42- // For now, we re-throw to make the crash explicit.
43- throw error ;
47+
48+ // Create a dummy client that will fail gracefully at runtime instead of crashing during initialization
49+ s3ClientInstance = null as any ;
50+ console . error (
51+ '[S3] Creating dummy S3 client - file uploads will fail until credentials are fixed' ,
52+ ) ;
4453}
4554
4655export const s3Client = s3ClientInstance ;
0 commit comments