Eri*_*ord 8 aws-cloudformation aws-cli aws-lambda
尝试更新aws cli中的cloudformation堆栈时:
aws --profile dev cloudformation update-stack --stack-name mystackname --template-body file://events-list.yaml
Run Code Online (Sandbox Code Playgroud)
我收到以下错误
An error occurred (ValidationError) when calling the UpdateStack operation: UpdateStack cannot be used with templates containing Transforms.
Run Code Online (Sandbox Code Playgroud)
因为我使用AWS无服务器转换进行lambda函数部署
Transform: 'AWS::Serverless-2016-10-31'
Run Code Online (Sandbox Code Playgroud)
是否有CLI方式来执行此堆栈更新,或者我将不得不在GUI中处理我的APM.
wjo*_*dan 20
您可以使用deploy而不是update-stack:
aws cloudformation deploy \
--template-file serverless-output.yaml \
--stack-name new-stack-name \
--capabilities CAPABILITY_IAM
Run Code Online (Sandbox Code Playgroud)
因为该命令是必要的变换需要使用应用的变更集,该deploy指令为你自动.有关进一步的讨论,请参阅使用包含转换的堆栈:
要使用转换创建或更新堆栈,您必须创建更改集,然后执行它.更改集描述了AWS CloudFormation将根据已处理的模板执行的操作.在处理期间,AWS CloudFormation将AWS SAM语法转换为由转换定义的语法.处理可以添加您可能不知道的多个资源.例如,专用
AWS::Serverless::Function资源添加AWS身份和访问管理(IAM)执行角色和Lambda函数.为了确保您了解转换引入的所有更改,AWS CloudFormation要求您使用更改集.[...]
如果使用AWS CLI,则可以使用
package和deploy命令减少使用转换启动堆栈的步骤数.
| 归档时间: |
|
| 查看次数: |
4310 次 |
| 最近记录: |