使用 Git 同步从存储库源代码创建堆栈
本主题介绍如何创建使用 Git 同步与 Git 存储库同步的 CloudFormation 堆栈。
重要
在继续之前,请完成上一节中的所有先决条件。
从存储库源代码创建堆栈
登录到 Amazon Web Services Management Console 并打开 Amazon CloudFormation 控制台 https://console.aws.amazon.com/cloudformation
。 -
在屏幕顶部的导航栏中,选择 Amazon Web Services 区域以在其中创建堆栈。
-
在堆栈页面上,选择创建堆栈,然后选择使用新资源(标准)。
-
在创建堆栈页面上,执行以下操作:
-
对于先决条件 - 准备模板,保持选中选择现有模板。
-
对于指定模板,选择与 Git 同步,然后选择下一步。
-
-
在指定堆栈详细信息页面上,对于堆栈名称,请键入堆栈的名称。堆栈名称可包含字母(A-Z 和 a-z)、数字(0-9)和短划线(-)。
-
对于堆栈部署文件、部署文件创建:
-
如果您尚未创建堆栈部署文件并将其添加到存储库中,请选择使用以下参数创建文件并将其放入我的存储库。
-
如果您的存储库中有堆栈部署文件,请选择我提供我存储库中的自有文件。
-
-
对于模板定义存储库,请选择选择已链接的 Git 存储库以选择已经链接到 CloudFormation 的 Git 存储库,或者选择链接 Git 存储库以链接新存储库。如果您选择链接 Git 存储库,请执行以下操作:
-
在选择存储库提供商中,选择以下选项之一:
-
GitHub
-
GitHub Enterprise Server
-
GitLab
-
Bitbucket
-
GitLab 自托管
-
-
对于连接,从列表中选择一个连接。如果连接列表中没有显示任何选项,请选择添加新连接以转到 Connections 控制台
,然后创建与您存储库的连接。
-
-
在存储库列表中,选择包含堆栈模板文件的 Git 存储库。
-
在分支列表中,选择希望 Git 同步监控的分支。
注意
Git 同步仅监控所选分支中对 CloudFormation 模板和堆栈部署文件的更改。要应用到堆栈的任何更改都必须提交到此分支。
-
对于部署文件路径,指定完整路径,包括存储库分支根目录下的堆栈部署文件名。
如果 CloudFormation 正在为您生成文件,那么这就是文件在存储库中提交的位置。如果您提供文件,那么这就是文件在存储库中的位置。
-
添加 IAM 角色。IAM 角色包含 CloudFormation 从 Git 存储库同步堆栈所需的权限。您可以选择新建 IAM 角色来生成新角色,也可以选择现有 IAM 角色以选择 Amazon Web Services 账户中的现有角色。如果选择生成新角色,该角色中将包含所需的权限。
-
启用或关闭拉取请求注释:
-
要让 CloudFormation 在堆栈更新的拉取请求中发布更改集信息,请将启用拉取请求注释开关保持开启状态。
-
如果您关闭此开关,CloudFormation 将不会描述当前堆栈配置与更新存储库文件拉取请求中的建议更改之间的区别。
-
-
对于模板文件路径,指定堆栈模板文件在存储库根目录下的完整路径。
-
(可选)要指定堆栈参数,请选择添加参数,为每个参数提供键和值,然后选择下一步。有关更多信息,请参阅 堆栈部署文件。
例如,要在堆栈部署文件中指定
port=8080
参数,请执行以下操作:-
选择 Add parameter (添加参数)。
-
对于键,输入
port
。 -
对于值,输入
8080
。
-
-
(可选)要指定堆栈标签,请选择添加新标签,为每个标签提供标签键和值,然后选择下一步。有关更多信息,请参阅 堆栈部署文件。
-
选择下一步,继续配置堆栈选项。有关配置堆栈选项的信息,请参阅 配置堆栈选项。
完成配置后,选择下一步,继续查看和进行部署。
-
查看堆栈设置并确认以下内容:
-
堆栈模板已正确配置并设置为从 Git 同步。
-
部署文件配置正确。
-
模板定义存储库配置正确,尤其是选择了正确的存储库和分支名称。
-
部署文件的预览正确,包含预期的参数和值。
-
-
选择提交以创建堆栈。
选择提交后,系统会在您的 Git 存储库中自动创建一条拉取请求。必须将此拉取请求合并到您的 Git 存储库中才能创建堆栈。创建堆栈后,CloudFormation 会监控您的 Git 存储库中的更改。
从 Git 存储库更新堆栈
要更新堆栈,请直接更改模板文件或 Git 存储库中的堆栈部署文件。在将更改提交到受监控的分支后,CloudFormation 会自动更新堆栈。如果您使用拉取请求,则系统会在 Stack 更新之前在 Git 存储库中自动创建拉取请求。必须将此拉取请求合并到您的 Git 存储库中才能更新您的堆栈。
在 CloudFormation 控制台中,您可以选择堆栈,然后选择 Git 同步选项卡,以查看有关堆栈状态和同步事件的信息。有关更多信息,请参阅 Git 同步状态控制面板。