29 lines
1.7 KiB
JavaScript
29 lines
1.7 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.resolveProfileData = void 0;
|
|
const property_provider_1 = require("@aws-sdk/property-provider");
|
|
const resolveAssumeRoleCredentials_1 = require("./resolveAssumeRoleCredentials");
|
|
const resolveSsoCredentials_1 = require("./resolveSsoCredentials");
|
|
const resolveStaticCredentials_1 = require("./resolveStaticCredentials");
|
|
const resolveWebIdentityCredentials_1 = require("./resolveWebIdentityCredentials");
|
|
const resolveProfileData = async (profileName, profiles, options, visitedProfiles = {}) => {
|
|
const data = profiles[profileName];
|
|
if (Object.keys(visitedProfiles).length > 0 && (0, resolveStaticCredentials_1.isStaticCredsProfile)(data)) {
|
|
return (0, resolveStaticCredentials_1.resolveStaticCredentials)(data);
|
|
}
|
|
if ((0, resolveAssumeRoleCredentials_1.isAssumeRoleProfile)(data)) {
|
|
return (0, resolveAssumeRoleCredentials_1.resolveAssumeRoleCredentials)(profileName, profiles, options, visitedProfiles);
|
|
}
|
|
if ((0, resolveStaticCredentials_1.isStaticCredsProfile)(data)) {
|
|
return (0, resolveStaticCredentials_1.resolveStaticCredentials)(data);
|
|
}
|
|
if ((0, resolveWebIdentityCredentials_1.isWebIdentityProfile)(data)) {
|
|
return (0, resolveWebIdentityCredentials_1.resolveWebIdentityCredentials)(data, options);
|
|
}
|
|
if ((0, resolveSsoCredentials_1.isSsoProfile)(data)) {
|
|
return (0, resolveSsoCredentials_1.resolveSsoCredentials)(data);
|
|
}
|
|
throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} could not be found or parsed in shared credentials file.`);
|
|
};
|
|
exports.resolveProfileData = resolveProfileData;
|