Skip to content

Commit ec8ebbc

Browse files
committed
chore: replace Promise resolve/reject with async
1 parent 13b6225 commit ec8ebbc

File tree

1 file changed

+18
-23
lines changed

1 file changed

+18
-23
lines changed

packages/credential-provider-imds/src/fromContainerMetadata.ts

Lines changed: 18 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,9 @@ export const ENV_CMDS_AUTH_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN";
1919
export const fromContainerMetadata = (init: RemoteProviderInit = {}): CredentialProvider => {
2020
const { timeout, maxRetries } = providerConfigFromInit(init);
2121
return async () => {
22-
const url = await getCmdsUri();
22+
const requestOptions = await getCmdsUri();
2323
return await retry(async () => {
24-
const credsResponse = JSON.parse(await requestFromEcsImds(timeout, url));
24+
const credsResponse = JSON.parse(await requestFromEcsImds(timeout, requestOptions));
2525
if (!isImdsCredentials(credsResponse)) {
2626
throw new ProviderError("Invalid response received from instance metadata service.");
2727
}
@@ -32,9 +32,10 @@ export const fromContainerMetadata = (init: RemoteProviderInit = {}): Credential
3232

3333
const requestFromEcsImds = async (timeout: number, options: RequestOptions): Promise<string> => {
3434
if (process.env[ENV_CMDS_AUTH_TOKEN]) {
35-
const { headers = {} } = options;
36-
headers.Authorization = process.env[ENV_CMDS_AUTH_TOKEN];
37-
options.headers = headers;
35+
options.headers = {
36+
...options.headers,
37+
Authorization: process.env[ENV_CMDS_AUTH_TOKEN],
38+
};
3839
}
3940

4041
const buffer = await httpRequest({
@@ -54,40 +55,34 @@ const GREENGRASS_PROTOCOLS = {
5455
"https:": true,
5556
};
5657

57-
const getCmdsUri = (): Promise<RequestOptions> => {
58+
const getCmdsUri = async (): Promise<RequestOptions> => {
5859
if (process.env[ENV_CMDS_RELATIVE_URI]) {
59-
return Promise.resolve({
60+
return {
6061
hostname: CMDS_IP,
6162
path: process.env[ENV_CMDS_RELATIVE_URI],
62-
});
63+
};
6364
}
6465

6566
if (process.env[ENV_CMDS_FULL_URI]) {
6667
const parsed = parse(process.env[ENV_CMDS_FULL_URI]!);
6768
if (!parsed.hostname || !(parsed.hostname in GREENGRASS_HOSTS)) {
68-
return Promise.reject(
69-
new ProviderError(`${parsed.hostname} is not a valid container metadata service hostname`, false)
70-
);
69+
throw new ProviderError(`${parsed.hostname} is not a valid container metadata service hostname`, false);
7170
}
7271

7372
if (!parsed.protocol || !(parsed.protocol in GREENGRASS_PROTOCOLS)) {
74-
return Promise.reject(
75-
new ProviderError(`${parsed.protocol} is not a valid container metadata service protocol`, false)
76-
);
73+
throw new ProviderError(`${parsed.protocol} is not a valid container metadata service protocol`, false);
7774
}
7875

79-
return Promise.resolve({
76+
return {
8077
...parsed,
8178
port: parsed.port ? parseInt(parsed.port, 10) : undefined,
82-
});
79+
};
8380
}
8481

85-
return Promise.reject(
86-
new ProviderError(
87-
"The container metadata credential provider cannot be used unless" +
88-
` the ${ENV_CMDS_RELATIVE_URI} or ${ENV_CMDS_FULL_URI} environment` +
89-
" variable is set",
90-
false
91-
)
82+
throw new ProviderError(
83+
"The container metadata credential provider cannot be used unless" +
84+
` the ${ENV_CMDS_RELATIVE_URI} or ${ENV_CMDS_FULL_URI} environment` +
85+
" variable is set",
86+
false
9287
);
9388
};

0 commit comments

Comments
 (0)