Amazon web services 我可以在AWS CloudFormation启动URL中设置参数吗?
我需要将我的用户指向他们需要运行的cloudformation堆栈,但我希望能够根据用户对其进行个性化设置。我已经阅读并希望创建一个URL,如:Amazon web services 我可以在AWS CloudFormation启动URL中设置参数吗?,amazon-web-services,amazon-cloudformation,Amazon Web Services,Amazon Cloudformation,我需要将我的用户指向他们需要运行的cloudformation堆栈,但我希望能够根据用户对其进行个性化设置。我已经阅读并希望创建一个URL,如: 注意中间的“MyPARAM=BLAH”。用户仍然可以将参数更改为他们想要的任何值,但我希望能够设置默认值。除了为每个用户编写自定义的Cloudformation模板之外,还有其他想法吗?[更新]:从开始,现在可以在提供给启动堆栈URL的URL查询参数中指定模板参数。使用param_parameterName格式指定模板参数,例如: 有关详细信息,请
注意中间的“MyPARAM=BLAH”。用户仍然可以将参数更改为他们想要的任何值,但我希望能够设置默认值。除了为每个用户编写自定义的Cloudformation模板之外,还有其他想法吗?[更新]:从开始,现在可以在提供给启动堆栈URL的URL查询参数中指定模板参数。使用
param_parameterName
格式指定模板参数,例如:
有关详细信息,请参阅
[原始答复,2017年2月10日]: 无法通过AWS CloudFormation启动URL直接预设默认参数
stackName
和templateURL
是此页面上执行的JavaScript代码解析的唯一两个URI片段组件
请参阅当前消息以确认这一点,特别是CreateStackController使用的StackInfo
对象中的parseRouteParams
函数:
this.parseRouteParams = function(a) {
a = _.reduce(a, function(a, b, d) {
a[d] = decodeURIComponent(b);
return a
}, a);
_.extend(this, _.pick(a, "stackName", "templateURL"))
}
以下是一些其他想法:
- 编写一些服务器端代码,根据提供的查询参数动态呈现CloudFormation模板中属性的
默认值
,将呈现的模板上载到S3 bucket,然后重定向到创建堆栈页面,为新呈现的模板提供URL
- 使用其他接口(如AWS CLI)或构建自己的web接口来动态提供默认参数
- 编写一个自定义用户脚本/浏览器扩展,该扩展扩展扩展控制台页面以解析附加的URI片段参数,并将正确的值直接注入控制台输入字段
- 请AWS将对该功能的支持直接添加到其URL解析代码中
您可以使用我们新的快速启动URL向Cloudformation控制台提供参数。它支持使用param_Foo语法的参数
下面是一个示例应用程序
请注意,根据设计,这不支持无回声参数的深度链接
更多信息:这就是我的想法。谢谢你的详尽回答!我找到了缩小的cloudformation javascript源代码,但我无法找出它对参数的作用。干得好!