我们的CloudFormation模板创建了一个具有随机名称的自动缩放组。现在,我们需要转到CodeDeploy控制台,手动将新的自动缩放组添加到部署组中——我们希望自动化此过程。例如,如果我们可以使用CloudFormation模板创建一个登台环境,并在没有任何手动步骤的情况下将代码部署到其中,那就太好了。
我可以看到两种方法:
- 让CloudFormation始终为自动缩放组分配相同的名称,只需在CodeDeploy控制台中对其进行配置
- 让CloudFormation使用新的自动缩放组名称修改CodeDeploy
CloudFormation似乎不允许任何一种方法——有什么想法可以做到这一点吗?
以下是我要做的:
- 将自动缩放组的名称放在模板的"输出"部分
- 创建堆栈后,调用describe stack从Outputs中检索自动缩放组名称
- 使用CodeDeploy API将自动缩放组添加到部署组中
如果你把它放在一个简单的脚本中,你可以很容易地创建尽可能多的临时堆栈/暂存环境。(您可能想要一个类似的脚本来删除堆栈。)