@@ -19,7 +19,8 @@ type AwsCredsFile = OnceCell<Option<Ini>>;
19
19
20
20
fn get_credentials_file_path ( context : & Context ) -> Option < PathBuf > {
21
21
context
22
- . get_env ( "AWS_CREDENTIALS_FILE" )
22
+ . get_env ( "AWS_SHARED_CREDENTIALS_FILE" )
23
+ . or_else ( || context. get_env ( "AWS_CREDENTIALS_FILE" ) )
23
24
. and_then ( |path| PathBuf :: from_str ( & path) . ok ( ) )
24
25
. or_else ( || {
25
26
let mut home = context. get_home ( ) ?;
@@ -428,7 +429,7 @@ mod tests {
428
429
429
430
assert ! ( ModuleRenderer :: new( "aws" )
430
431
. env(
431
- "AWS_CREDENTIALS_FILE " ,
432
+ "AWS_SHARED_CREDENTIALS_FILE " ,
432
433
config_path. to_string_lossy( ) . as_ref( ) ,
433
434
)
434
435
. collect( )
@@ -667,6 +668,15 @@ expiration={}
667
668
) ?;
668
669
669
670
let actual = ModuleRenderer :: new ( "aws" )
671
+ . env ( "AWS_PROFILE" , "astronauts" )
672
+ . env ( "AWS_REGION" , "ap-northeast-2" )
673
+ . env (
674
+ "AWS_SHARED_CREDENTIALS_FILE" ,
675
+ credentials_path. to_string_lossy ( ) . as_ref ( ) ,
676
+ )
677
+ . collect ( ) ;
678
+
679
+ let actual_variant = ModuleRenderer :: new ( "aws" )
670
680
. env ( "AWS_PROFILE" , "astronauts" )
671
681
. env ( "AWS_REGION" , "ap-northeast-2" )
672
682
. env (
@@ -675,6 +685,11 @@ expiration={}
675
685
)
676
686
. collect ( ) ;
677
687
688
+ assert_eq ! (
689
+ actual, actual_variant,
690
+ "both AWS_SHARED_CREDENTIALS_FILE and AWS_CREDENTIALS_FILE should work"
691
+ ) ;
692
+
678
693
// In principle, "30m" should be correct. However, bad luck in scheduling
679
694
// on shared runners may delay it. Allow for up to 2 seconds of delay.
680
695
let possible_values = [ "30m" , "29m59s" , "29m58s" ] ;
@@ -830,7 +845,7 @@ aws_secret_access_key=dummy
830
845
. env ( "AWS_PROFILE" , "astronauts" )
831
846
. env ( "AWS_REGION" , "ap-northeast-2" )
832
847
. env (
833
- "AWS_CREDENTIALS_FILE " ,
848
+ "AWS_SHARED_CREDENTIALS_FILE " ,
834
849
credentials_path. to_string_lossy ( ) . as_ref ( ) ,
835
850
)
836
851
. collect ( ) ;
0 commit comments