本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon CloudFormation供 CodeDeploy参考的模板
此部分介绍设计用于 CodeDeploy 部署的 Amazon CloudFormation 资源、转换和挂钩。有关创建由Amazon CloudFormation hook 管理的堆栈更新的详细说明 CodeDeploy,请参阅通过创建 Amazon ECS 蓝/绿部署 Amazon CloudFormation
注意
Amazon CloudFormation挂钩是生命周期事件挂钩Amazon CloudFormation组件的一部分Amazon,不同于 CodeDeploy生命周期事件挂钩。
除了中可用的其他方法外 CodeDeploy,您还可以使用Amazon CloudFormation模板执行以下任务:
-
创建应用程序。
-
创建部署组并指定目标修订。
-
创建部署配置。
-
创建 Amazon EC2 实例。
Amazon CloudFormation 是一项服务,可帮助您使用模板来建模和设置 Amazon 资源。Amazon CloudFormation 模板是一个文本文件,其格式符合 JSON 格式标准。您可创建一个模板来描述所需的所有 Amazon 资源,而 Amazon CloudFormation 负责为您预配和配置这些资源。
有关更多信息,请参阅什么是Amazon CloudFormation? 和 “使用Amazon CloudFormation用户指南Amazon CloudFormation” 中的模板。
如果您计划使用与 CodeDeploy 兼容的Amazon CloudFormation模板,则您作为管理员,必须授予对Amazon CloudFormation及其Amazon CloudFormation依赖的Amazon服务和操作的访问权。要授予创建应用程序、部署组和部署配置的权限,请将以下策略添加到要使用的用户的权限集中Amazon CloudFormation:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudformation:*" ], "Resource": "*" } ] }
有关策略的更多信息,请参阅以下主题:
-
要查看必须添加到创建 Amazon EC2 实例的用户的权限集中的策略,请参阅为 CodeDeploy (Amazon CloudFormation模板)创建 Amazon EC2 实例。
-
有关向权限集添加策略的信息,请参阅 IAM 用户指南中的创建权限集。
-
要了解如何限制用户只能使用一组有限的 CodeDeploy 操作和资源,请参阅适用于 CodeDeploy 的 Amazon 托管(预定义)策略。
下表显示 Amazon CloudFormation 模板可代表您执行的操作,并且包含一些链接指向您可添加到 Amazon CloudFormation 模板的 Amazon 资源类型及其属性类型的相关详细信息。
操作 | Amazon CloudFormation 引用 | 引用类型 |
---|---|---|
创建 CodeDeploy 应用程序。 | AWS::Code部署:: 应用程序 | Amazon CloudFormation 资源 |
创建并指定用于部署应用程序修订的部署组的详细信息。¹ | AWS::CodeDeploy::DeploymentGroup | Amazon CloudFormation 资源 |
创建一组 CodeDeploy 将在部署期间使用的部署规则、部署成功条件和部署失败条件。 | AWS::CodeDeploy::DeploymentConfig | Amazon CloudFormation 资源 |
创建 Amazon EC2 实例。² | AWS:: EC2:: 实例 | Amazon CloudFormation 资源 |
使用Amazon CloudFormationAWS::CodeDeployBlueGreen 转换和AWS::CodeDeploy::BlueGreen 挂接来管理堆栈更新、创建资源和转移 CodeDeploy 蓝/绿部署的流量。 3 |
AWS::CodeDeployBlueGreen | AWS::CodeDeployBlueGreen 转换是一个由 Amazon CloudFormation 托管的宏 |
AWS::CodeDeploy::BlueGreen | AWS::CodeDeploy::BlueGreen 挂钩在 Amazon CloudFormation 中构建为 Hook 资源。挂接包含的参数通过指向指定的 CodeDeploy生命周期事件挂钩来取代您的 CodeDeploy AppSpec 文件。 |
|
¹ 如果您将要部署的应用程序修订版本指定为部署组的一部分,则您的目标修订将在配置过程完成后立即部署。有关模板配置的更多信息,请参阅《Amazon CloudFormation用户指南》 GitHubLocation中的CodeDeploy DeploymentGroup 部署修订版 S3Location 和CodeDeploy DeploymentGroup 部署修订版。 ² 我们提供的模板可用于在支持的区域创建 Amazon EC2 实例。 CodeDeploy 有关使用这些模板的更多信息,请参阅为 CodeDeploy (Amazon CloudFormation模板)创建 Amazon EC2 实例。 3 本部署配置仅支持 Amazon ECS ECS 蓝/绿部署接口进行部署。有关 Amazon ECS 蓝/绿部署配置的更多信息Amazon CloudFormation,请参阅Amazon CloudFormation 蓝绿部署的部署配置 (Amazon ECS)。有关通过 Amazon ECS ECS 蓝/绿部署Amazon CloudFormation以及如何在中查看部署的更多信息 CodeDeploy,请参阅通过创建 Amazon ECS 蓝/绿部署 Amazon CloudFormation。 |