首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将CAPABILITY_AUTO_EXPAND用于CloudFormation上的嵌套堆栈

将CAPABILITY_AUTO_EXPAND用于CloudFormation上的嵌套堆栈
EN

Stack Overflow用户
提问于 2018-11-29 16:22:35
回答 5查看 21.3K关注 0票数 20

我试图使用嵌套堆栈,当我的ChangeSet被执行时,我得到了以下错误:

Requires capabilities : [CAPABILITY_AUTO_EXPAND]

我去创建了一个使用cloudformation的管道。

这可用于创建管道:

代码语言:javascript
复制
Configuration:
  ActionMode: CHANGE_SET_REPLACE
  ChangeSetName: changeset
  RoleArn: ??
  Capabilities: CAPABILITY_IAM
  StackName: appsync-graphql
  TemplatePath: BuildArtifact::output.yaml

这不能:

代码语言:javascript
复制
Configuration:
  ActionMode: CHANGE_SET_REPLACE
  ChangeSetName: changeset
  RoleArn: ??
  Capabilities: 
    - CAPABILITY_IAM
    - CAPABILITY_AUTO_EXPAND
  StackName: appsync-graphql
  TemplatePath: BuildArtifact::output.yaml

错误是:“属性配置的值必须是具有字符串(或简单类型)属性的对象”。

这是我找到的最近的文档:UpdateStack.html

它说:Type: Array of strings用于capabilites,aws文档也这样说,但没有给出一个例子。

因此,我没有任何其他的想法来尝试拥有CAPABILITY_AUTO_EXPAND功能。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2018-12-06 00:26:30

我尝试了另一个变体,它成功了!

代码语言:javascript
复制
Configuration:
  ..
  Capabilities: CAPABILITY_IAM,CAPABILITY_AUTO_EXPAND
  ...
票数 30
EN

Stack Overflow用户

发布于 2018-12-01 08:33:16

我从基顿·霍奇森那里得到了答案,这个cli命令有效:

代码语言:javascript
复制
sam deploy --template-file output.yaml --stack-name <AppName> --capabilities CAPABILITY_IAM CAPABILITY_AUTO_EXPAND

注意,这里没有逗号。

我仍然不知道如何更改管道模板以使其工作。

票数 17
EN

Stack Overflow用户

发布于 2020-06-14 15:54:02

我尝试了上面的解决方案,今天(2020年6月)使用更高级别的sam对我起作用的是在列出的功能之间添加了一个空间。在这个文本文件解释中没有弹性是完全疯狂的。SAM的cli是开源的,所以我想我可以把我的代码放在嘴边,然后提交一个PR。不管怎么说。

samconfig.toml

代码语言:javascript
复制
...
capabilities = "CAPABILITY_IAM CAPABILITY_AUTO_EXPAND"
...

然后:

sam deploy

输出:

代码语言:javascript
复制
...
Capabilities               : ["CAPABILITY_IAM", "CAPABILITY_AUTO_EXPAND"]
...
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53543397

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档