serverless/lib/plugins/aws/utils/resolve-lambda-target.js

14 lines
497 B
JavaScript

'use strict';
const memoizee = require('memoizee');
const naming = require('../lib/naming');
const resolveLambdaTarget = memoizee((functionName, functionObject) => {
const lambdaLogicalId = naming.getLambdaLogicalId(functionName);
const functionArnGetter = { 'Fn::GetAtt': [lambdaLogicalId, 'Arn'] };
if (!functionObject.targetAlias) return functionArnGetter;
return { 'Fn::Join': [':', [functionArnGetter, functionObject.targetAlias.name]] };
});
module.exports = resolveLambdaTarget;