in src/clients.ts [91:111]
async function getSecret(secretId: string, options: SecretOptions = {}): Promise<Secret> {
const credentials = options.profile ? new aws.SharedIniFileCredentials({ profile: options.profile }) : undefined;
const client = new aws.SecretsManager({
region: options.region,
credentials: credentials,
customUserAgent: `${PKG.name}/${PKG.version}`,
});
const result = await client.getSecretValue({ SecretId: secretId }).promise();
let json;
try {
json = JSON.parse(result.SecretString!);
} catch (e) {
throw new Error(`Secret "${secretId}" must be a JSON object`);
}
return {
arn: result.ARN!,
json: json,
};
}