2017-09-20 42 views
0

我用这个资源编写了一个云信息模板来创建一个SNS主题。CloudFormation:发布到SNS主题

"mySNS" : { 
    "Type" : "AWS::SNS::Topic", 
    "Properties" : { 
     "Subscription" : [ 
     { "Endpoint" : { "Fn::GetAtt": [ "myLambda", "Arn" ] }, "Protocol" : "lambda" } 
     ], 
     "TopicName" : "mySNS" 
    } 
} 

有没有办法从模板中发布到这个SNS主题?我在CloudFormation模板参考http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html中找不到任何内容。

+0

你从执行它的cloudformation栈意味着更新我的答案吗? –

回答

1

简短的回答:没有

长的答案/解决方法:AWS CloudFormation更多的是在AWS定义的资源比实际使用的时候。但是,如果发布此主题对您的配置过程很重要,我建议您创建一个lambda-backed custom resource。然后lambda会很容易发布到主题。

如果您仍然需要帮助,以完成它,我可以用短为例

+0

我添加了一个自定义资源来调用lambda函数。但是自一小时以来,cloudformation堆栈就停留在该自定义资源创建步骤中。它可能期待lambda函数的响应。你能帮助一个lambda函数片段(希望在python中)来响应CFT吗? –

+0

你说得对,CloudFormation希望被lambda回调,即使在失败的情况下也是如此。我强烈建议你使用cfn-wrapper-python库来为你处理这个任务:https://github.com/ryansb/cfn-wrapper-python –