我对sam当地人的SNS支持感到困惑。
只能将Lambda指向带有sam模板的现有SNS主题,或者也可以为我创建创建主题吗?
如果可能,我非常想做后者。
答案 0 :(得分:2)
我不确定何时添加此功能,但是您当前可以使用SAM Local创建SNS主题和Lambda SNS事件...这适用于SAM Local版本0.10.0
这将创建一个名为“ MyLambdaFunction”的Lambda函数,一个名为“ SNSTopicName”的SNS主题,并将两者结合在一起
AWSTemplateFormatVersion: '2010-09-09'
Transform: 'AWS::Serverless-2016-10-31'
Description: "Test to create Lambda and SNS with SAM Local"
Resources:
MyLambdaFunction:
Type: 'AWS::Serverless::Function'
Properties:
CodeUri: .
Runtime: nodejs8.10
Handler: index.handler
Description: "Function that is triggered from an SNS topic"
MemorySize: 128
Timeout: 10
Events:
SNS1:
Type: SNS
Properties:
Topic:
Ref: LambdaSNSTopic
LambdaSNSTopic:
Type: "AWS::SNS::Topic"
Properties:
DisplayName: "My SNS topic"
Subscription:
-
Endpoint:
Fn::GetAtt:
- "MyLambdaFunction"
- "Arn"
Protocol: "lambda"
TopicName: "SNSTopicName"
我不确定您是否可以使用现有的SNS主题