diff --git a/clients/client-sts/src/defaultStsRoleAssumers.ts b/clients/client-sts/src/defaultStsRoleAssumers.ts index bb7e08de7d18..79ce9cea75db 100644 --- a/clients/client-sts/src/defaultStsRoleAssumers.ts +++ b/clients/client-sts/src/defaultStsRoleAssumers.ts @@ -58,7 +58,7 @@ const getAccountIdFromAssumedRoleUser = (assumedRoleUser?: AssumedRoleUser) => { /** * @internal * - * Default to the parent client region or us-east-1 if no region is specified. + * Default to the parent client region, AWS_REGION environment variable, or us-east-1 if no region is specified. */ const resolveRegion = async ( _region: string | Provider | undefined, @@ -67,15 +67,17 @@ const resolveRegion = async ( ): Promise => { const region: string | undefined = typeof _region === "function" ? await _region() : _region; const parentRegion: string | undefined = typeof _parentRegion === "function" ? await _parentRegion() : _parentRegion; + const envRegion = process.env.AWS_REGION || process.env.AWS_DEFAULT_REGION; credentialProviderLogger?.debug?.( "@aws-sdk/client-sts::resolveRegion", "accepting first of:", `${region} (provider)`, `${parentRegion} (parent client)`, + `${envRegion} (environment)`, `${ASSUME_ROLE_DEFAULT_REGION} (STS default)` ); - return region ?? parentRegion ?? ASSUME_ROLE_DEFAULT_REGION; + return region ?? parentRegion ?? envRegion ?? ASSUME_ROLE_DEFAULT_REGION; }; /** diff --git a/codegen/smithy-aws-typescript-codegen/src/main/resources/software/amazon/smithy/aws/typescript/codegen/sts-client-defaultStsRoleAssumers.ts b/codegen/smithy-aws-typescript-codegen/src/main/resources/software/amazon/smithy/aws/typescript/codegen/sts-client-defaultStsRoleAssumers.ts index 69a2d0019161..a430cc029179 100644 --- a/codegen/smithy-aws-typescript-codegen/src/main/resources/software/amazon/smithy/aws/typescript/codegen/sts-client-defaultStsRoleAssumers.ts +++ b/codegen/smithy-aws-typescript-codegen/src/main/resources/software/amazon/smithy/aws/typescript/codegen/sts-client-defaultStsRoleAssumers.ts @@ -55,7 +55,7 @@ const getAccountIdFromAssumedRoleUser = (assumedRoleUser?: AssumedRoleUser) => { /** * @internal * - * Default to the parent client region or us-east-1 if no region is specified. + * Default to the parent client region, AWS_REGION environment variable, or us-east-1 if no region is specified. */ const resolveRegion = async ( _region: string | Provider | undefined, @@ -64,15 +64,17 @@ const resolveRegion = async ( ): Promise => { const region: string | undefined = typeof _region === "function" ? await _region() : _region; const parentRegion: string | undefined = typeof _parentRegion === "function" ? await _parentRegion() : _parentRegion; + const envRegion = process.env.AWS_REGION || process.env.AWS_DEFAULT_REGION; credentialProviderLogger?.debug?.( "@aws-sdk/client-sts::resolveRegion", "accepting first of:", `${region} (provider)`, `${parentRegion} (parent client)`, + `${envRegion} (environment)`, `${ASSUME_ROLE_DEFAULT_REGION} (STS default)` ); - return region ?? parentRegion ?? ASSUME_ROLE_DEFAULT_REGION; + return region ?? parentRegion ?? envRegion ?? ASSUME_ROLE_DEFAULT_REGION; }; /** diff --git a/packages/nested-clients/src/submodules/sts/defaultStsRoleAssumers.ts b/packages/nested-clients/src/submodules/sts/defaultStsRoleAssumers.ts index bb7e08de7d18..79ce9cea75db 100644 --- a/packages/nested-clients/src/submodules/sts/defaultStsRoleAssumers.ts +++ b/packages/nested-clients/src/submodules/sts/defaultStsRoleAssumers.ts @@ -58,7 +58,7 @@ const getAccountIdFromAssumedRoleUser = (assumedRoleUser?: AssumedRoleUser) => { /** * @internal * - * Default to the parent client region or us-east-1 if no region is specified. + * Default to the parent client region, AWS_REGION environment variable, or us-east-1 if no region is specified. */ const resolveRegion = async ( _region: string | Provider | undefined, @@ -67,15 +67,17 @@ const resolveRegion = async ( ): Promise => { const region: string | undefined = typeof _region === "function" ? await _region() : _region; const parentRegion: string | undefined = typeof _parentRegion === "function" ? await _parentRegion() : _parentRegion; + const envRegion = process.env.AWS_REGION || process.env.AWS_DEFAULT_REGION; credentialProviderLogger?.debug?.( "@aws-sdk/client-sts::resolveRegion", "accepting first of:", `${region} (provider)`, `${parentRegion} (parent client)`, + `${envRegion} (environment)`, `${ASSUME_ROLE_DEFAULT_REGION} (STS default)` ); - return region ?? parentRegion ?? ASSUME_ROLE_DEFAULT_REGION; + return region ?? parentRegion ?? envRegion ?? ASSUME_ROLE_DEFAULT_REGION; }; /**