|
1 | 1 | const { readFileSync } = require("fs");
|
2 | 2 | const { join } = require("path");
|
3 |
| -const { STSClient, GetCallerIdentityCommand } = require("../../clients/client-sts"); |
4 |
| -const { CloudFormationClient, DescribeStackResourcesCommand } = require("../../clients/client-cloudformation"); |
5 |
| -const { S3ControlClient, ListMultiRegionAccessPointsCommand } = require("../../clients/client-s3-control"); |
| 3 | +const { STSClient, GetCallerIdentityCommand } = require("@aws-sdk/client-sts"); |
| 4 | +const { CloudFormationClient, DescribeStackResourcesCommand } = require("@aws-sdk/client-cloudformation"); |
| 5 | +const { S3ControlClient, ListMultiRegionAccessPointsCommand } = require("@aws-sdk/client-s3-control"); |
6 | 6 | const { ensureTestStack } = require("./ensure-test-stack");
|
7 | 7 | const { deleteStaleChangesets } = require("./delete-stale-changesets");
|
8 | 8 | const { loadSharedConfigFiles } = require("@smithy/shared-ini-file-loader");
|
9 |
| -const { fromIni } = require("@aws-sdk/credential-providers"); |
| 9 | +const { createCredentialChain, fromIni, fromHttp } = require("@aws-sdk/credential-providers"); |
10 | 10 |
|
11 | 11 | exports.getIntegTestResources = async () => {
|
12 | 12 | const ini = await loadSharedConfigFiles();
|
13 |
| - if (ini.configFile["sdk-integ-test"] || ini.credentialsFile["sdk-integ-test"]) { |
14 |
| - process.env.AWS_PROFILE = "sdk-integ-test"; |
| 13 | + const profileData = ini.configFile["sdk-integ-test"] ?? ini.credentialsFile["sdk-integ-test"]; |
| 14 | + if (profileData) { |
15 | 15 | console.log("Setting AWS_PROFILE=sdk-integ-test");
|
| 16 | + process.env.AWS_PROFILE = "sdk-integ-test"; |
| 17 | + if (profileData.role_arn) { |
| 18 | + console.log( |
| 19 | + `Setting AWS_CONTAINER_CREDENTIALS_RELATIVE_URI=${process.env.AWS_CONTAINER_CREDENTIALS_RELATIVE_URI}` |
| 20 | + ); |
| 21 | + process.env.AWS_CONTAINER_CREDENTIALS_RELATIVE_URI = `/role-arn/${profileData.role_arn}`; |
| 22 | + } |
16 | 23 | } else {
|
17 | 24 | console.log("AWS_PROFILE is", process.env.AWS_PROFILE);
|
18 | 25 | }
|
19 | 26 |
|
20 |
| - // TODO(debug) |
21 |
| - console.log({ |
22 |
| - config: ini.configFile, |
23 |
| - credentials: ini.credentialsFile, |
24 |
| - }); |
25 |
| - |
26 | 27 | const region = "us-west-2";
|
27 | 28 | const cloudformation = new CloudFormationClient({
|
28 | 29 | region,
|
|
0 commit comments