Cloudformation:参数化参数名称?

时间:2019-05-13 07:32:49

标签: amazon-web-services amazon-cloudformation

我目前正在处理一个令人讨厌的问题:

我们正在SSM参数存储中存储一些特定于环境(dev / test / prod / etc)的参数值,因此它们具有不同的名称。它们经常变化。

环境正在作为CF模板参数传递到update-stack,我想据此构造实际的SSM参数名称(这是我引用的博客文章:https://aws.amazon.com/blogs/mt/integrating-aws-cloudformation-with-aws-systems-manager-parameter-store/)< / p>

我真的很想在Cloudformation模板中使用单个通用参数,但这似乎是不可能的,因为参数的值需要进行硬编码。而且,您似乎无法!Ref!Join语句。

外面有人做了类似的事情,找到了一个好的解决方法吗?

1 个答案:

答案 0 :(得分:0)

不幸的是,内部函数(例如!Join)只能在CloudFormation模板的certain parts中使用:

  

您只能在模板的特定部分中使用内部函数。当前,您可以在资源属性,输出,元数据属性和更新策略属性中使用内部函数。

这意味着您可能必须在要构建SSM参数名称的每个位置使用!Join

您也许可以使用!Transform进行查找和替换操作,但这取决于您的具体情况。