gpt4 book ai didi

version-control - 云形成 Nested Stacks 使用 TemplateURL 版本控制模板的最佳方式

转载 作者:行者123 更新时间:2023-12-02 03:32:26 27 4
gpt4 key购买 nike

我们正在创建一个要部署在多个环境(dev、qa、stg、prd)中的微服务项目,我们计划利用云形成模板,使用嵌套堆栈来实现多个服务之间的共享资源。问题是,当使用嵌套堆栈时,您需要指定嵌套资源的 TemplateURL,这是一个指向 S3 存储桶的静态 URL,每次更新模板时该 URL 都会发生变化(上传包含一些更改的新模板)。

所以问题是,使用 GIT 等版本控制工具来跟踪嵌套模板中所做的更改的最佳方法是什么?一旦将其上传到 S3,就会为您提供一个新的 URL?

最佳答案

cloudformation package AWS 命令​​行界面中的命令会将本地构件(包括 AWS::CloudFormation::Stack 资源的 TemplateURL 属性)上传到 S3 存储桶,并输出转换后的CloudFormation 模板引用上传的工件。

使用此命令,跟踪更改的最佳方法是将基本模板和嵌套堆栈模板提交到 Git,然后使用 cloudformation package 作为部署脚本中的中间处理步骤,例如,与 cloudformation deploy :

S3_BUCKET=my_s3_bucket
TEMPLATE=base_template.yml
OUTPUT_TEMPLATE=$(mktemp)

aws cloudformation package \
--template-file $TEMPLATE \
--s3-bucket $S3_BUCKET \
--output-template-file $OUTPUT_TEMPLATE

aws cloudformation deploy \
--template-file $OUTPUT_TEMPLATE \
--stack-name $STACK

关于version-control - 云形成 Nested Stacks 使用 TemplateURL 版本控制模板的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51431252/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com