使用AWS CloudFormation Deploy部署嵌套栈时遇无效模板路径错误
CloudFormation部署报错「Invalid template path」的原因及解决办法
问题根源:
aws cloudformation deploy命令的--template-file参数仅支持本地文件系统路径,不接受S3 URL。你直接传入S3链接给这个参数,就会触发路径无效的错误。解决办法二选一:
- 先下载S3模板到本地再部署
# 从S3下载模板到当前目录 aws s3 cp "${S3_ROOT_TEMPLATE}" ./main_stack.yaml # 使用本地文件路径执行部署 aws cloudformation deploy --stack-name "${STACK_NAME}" --template-file ./main_stack.yaml --parameter-overrides ${PARAMS[@]} --region ${REGION} - 改用支持S3 URL的命令
使用create-stack或update-stack命令,通过--template-url参数直接指定S3链接:# 新建栈用create-stack aws cloudformation create-stack --stack-name "${STACK_NAME}" --template-url "${S3_ROOT_TEMPLATE}" --parameters ${PARAMS[@]} --region ${REGION} # 已有栈更新用update-stack aws cloudformation update-stack --stack-name "${STACK_NAME}" --template-url "${S3_ROOT_TEMPLATE}" --parameters ${PARAMS[@]} --region ${REGION}
- 先下载S3模板到本地再部署
内容的提问来源于stack exchange,提问作者Shiva
相关产品推荐
相关产品推荐

