Skip to content

Commit 2059899

Browse files
committed
Consider environment variables the AWS CLI considers
The AWS CLI considers `AWS_DEFAULT_PROFILE` and `AWS_DEFAULT_REGION` when creating default clients, however the AWS SDK for JS only considers `AWS_PROFILE` and `AWS_REGION`. This aims to align the behavior of both ways by automatically setting `AWS_PROFILE` and `AWS_REGION` from the matching `AWS_DEFAULT_` variable (unless the variables were already set) See #131
1 parent 0eba137 commit 2059899

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

Diff for: packages/aws-cdk/lib/api/util/sdk-load-aws-config.ts

+12
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,15 @@ if (fs.existsSync(sharedCredentialsFile)) {
3131
// Ensures that region is loaded from ~/.aws/config (https://github.com/aws/aws-sdk-js/pull/1391)
3232
process.env.AWS_SDK_LOAD_CONFIG = '1';
3333
}
34+
35+
/*
36+
* Set environment variables so JS AWS SDK behaves as close as possible to AWS CLI.
37+
* @see https://github.com/aws/aws-sdk-js/issues/373
38+
* @see https://github.com/awslabs/aws-cdk/issues/131
39+
*/
40+
if (process.env.AWS_DEFAULT_PROFILE && !process.env.AWS_PROFILE) {
41+
process.env.AWS_PROFILE = process.env.AWS_DEFAULT_PROFILE;
42+
}
43+
if (process.env.AWS_DEFAULT_REGION && !process.env.AWS_REGION) {
44+
process.env.AWS_REGION = process.env.AWS_DEFAULT_REGION;
45+
}

0 commit comments

Comments
 (0)