UNPKG

osls

Version:

Open-source alternative to Serverless Framework

21 lines (16 loc) 720 B
'use strict'; const ServerlessError = require('../../../serverless-error'); async function resolveCfImportValue(provider, name, sdkParams = {}) { return provider.request('CloudFormation', 'listExports', sdkParams).then((result) => { const targetExportMeta = result.Exports.find((exportMeta) => exportMeta.Name === name); if (targetExportMeta) return targetExportMeta.Value; if (result.NextToken) { return resolveCfImportValue(provider, name, { NextToken: result.NextToken }); } throw new ServerlessError( `Could not resolve Fn::ImportValue with name ${name}. Are you sure this value is exported ?`, 'CF_IMPORT_RESOLUTION' ); }); } module.exports = resolveCfImportValue;